Home

User`s Manual - CrustCrawler Robotics

image

Contents

1. Reserved EEPROM 11 0X0B the Highest Limit Temperature RD WR 100 0x64 Area 12 0X0C the Lowest Limit Voltage RD WR 94 G0 0XSC 13 0X0D the Highest Limit Voltage RD WR 190 0XBE Reserved RDWR 255 0XFF 15 0X0F Reserved RDWR 30 03 16 0X10 Status Return Level RD WR 2 0x02 1710X111 Reserved RDWR A 0x04 18 0X12 Reserved RDWR 494 A 0x04 19 0X13 Reserved RDWR 010 00 20 0X14 Obstacle Detected Compare Value RD WR 32 0x20 21 0X15 Light Detected Compare Value RD WR 32 0x20 22 0X16 Reserved RDWR 320x20 1230817 Reserved 30 03 24 0X18 Reserved 2508191 Reserved RDWR 00 00 2601 Leftln Sensor Data RD 2 27 0X1B Center IR Sensor Data RD 2 20 0X1C Right IR Sensor Data f RD Left Luminosity RD 30 0X1E Center Luminosity f RD 31 0X1F Right Luminosity J RD Obstacle Detection Flag S 3310 21 Luminosity Detection Flag f 3404722 Reserved RDWR 0 35 0X23 Sound Data 36 0X24 Sound Data Max Hold RDWR 37 0X25 Sound
2. THIGENESS ror 496 de3 a a 5o 3 50 438 154 7 7 1 42 DYNAMIXEL enl ROBOTIS Dimension e6 ge Om ie E 1 D ol Le www robotis com 5 59 16 3e 27 38 3e CM 5 Dedicated AX 12 AX S1 control box Able to control 30 AX 12 actuators 10 AX S1 6 push buttons 5 for selection 1 for reset Optional installable wireless devices available Battery compartment AA x 8 with recharging capability when connected to an external SMPS 43
3. Instruction Packet ID N Main Controller Status Packet ID N Unique ID If multiple Dynamixel units have the same ID value multiple packets sent simultaneously collide resulting in communication problems Thus it is imperative that no Dynamixel units share the same ID in a network node Protocol The Dynamixel actuators communicate through asynchronous serial communication with 8 bit 1 stop bit and no parity DYNAMIXEL AX S1 ROBOTIS 3 2 Instruction Packet Instruction Packet OXFF 0 iD Broadcasting ID LENGTH INSTRUCTION CHECK SUM The Instruction Packet is the packet sent by the main controller to the Dynamixel units to send commands The structure of the Instruction Packet is as the following OXFF OXFF 10 LENGTH INSTRUCTION PARAMETER CHECK SUM The meanings of each packet byte definition are as the following The two OXFF bytes indicate the start of an incoming packet The unique ID of a Dynamixel unit There are 254 available ID values ranging from 0X00 to OXFD ID OXFE is the Broadcasting ID which indicates all of the connected Dynamixel units Packets sent with this ID apply to all Dynamixel units on the network Thus packets sent with a broadcasting ID will not return any status packets The length of the pac
4. while ITXD BUFFER READY BIT wait until data can be loaded SerialTxDBuffer 2 bData data load to TxD buffer 36 DYNAMIXEL 3 ROBOTIS When changing the direction the TXD SHIFT REGISTER EMPTY BIT must be checked The following is an example program that sends an Instruction Packet LINE 1 DIRECTION PORT TX DIRECTION LINE 2 TxDByte Oxff LINE 3 TxDByte Oxff LINE 4 TxDByte bID LINE 5 TxDByte bLength LINE 6 TxDByte blInstruction LINE 7 TxDByte ParameterO TxDByte Parameter1 LINE 8 Disablelnterrupt interrupt should be disable LINE 9 TxDByte Checksum last TxD LINE 10 while ITXD SHIFT REGISTER Wait till last data bit has been sent LINE 11 DIRECTION PORT DIRECTION Direction change to LINE 12 Enablelnterrupt enable interrupt again Please note the important lines between LINE 8 and LINE 12 Line 8 is necessary since an interrupt here may cause a delay longer than the return delay time and corruption to the front of the status packet may occur Byte to Byte Time The delay time between bytes when sending an instruction packet If the delay time is over 100ms then the Dynamixel actuator recognizes this as a communication problem and waits for the next header Oxff Oxff of a packet again Byte To Byte Time The following is the source code of a program Example c that accesses the Dynamixel actuator using the Atmega 128 37 DYNAMIXEL RO
5. 39 DYNAMIXEL gbpTxBuffer 4 bInstruction for bCount 0 bCount bParameterLength bCount gbpTxBuffer bCount 5 gbpParameter bCount bCheckSum 0 bPacketLength bParameterLength 4 2 for bCount 2 bCount lt bPacketLength 1 bCount except Oxff checksum bCheckSum gbpTxBuffer bCount gbpTxBuffer bCount bCheckSum Writing Checksum with Bit Inversion RS485_TXD for bCount 0 bCount lt bPacketLength bCount sbi UCSROA 6 SET_TXDO_FINISH TxD80 gbpTxBuffer bCount while CHECK TXDO FINISH Wait until TXD Shift register empty RS485 RXD return bPacketLength RxPacket read data from buffer RxPacket need a Parameter Total length of Return Packet RxPacket return Length of Return Packet byte RxPacket byte bRxPacketLength define TIMEOUT COUNT2 30001 define TIMEOUT COUNT1 TIMEOUT COUNT2 10L unsigned long ulCounter byte bCount bLength bChecksum byte bTimeout bTimeout 0 for bCount 0 bCount lt bRxPacketLength bCount ulCounter 0 while gbRxBufferReadPointer gbRxBufferWritePointer if ulCounter gt TIMEOUT bTimeout 1 break if DTimeout break gbpRxBuffer bCount gbpRxInterruptBuffer goRxBufferReadPointer bLength bCount bChecksum 0 if gbpTxBuffer 2 BROADCASTING ID if DTimeout 88 bRxPacketLength 255 TxDString r n
6. RxD8 gbpParameter 0 P TORQUE ENABLE Address of LED gbpParameter 1 0 Writing Data bTxPacketLength TxPacket bID INST WRITE 2 bRxPacketLength RxPacketDEFAULT RETURN PACKET SIZE TxDString r n TxD PrintBuffer gbpTxBuffer bTxPacketLength TxDString r n RxD PrintBuffer gbpRxBuffer oRxPacketLength TxDString r n n End Push reset button for repeat while 1 void Portlnitialize void DDRA DDRB DDRC DDRD DDRE DDRF 0 Set all port to input direction first PORTB PORTC PORTD PORTE PORTF PORTG 0x00 PortData initialize to 0 cbi SFIOR 2 All Port Pull Up ready DDRE RS485 DIRECTIONO BIT RS485 DIRECTION1 set output the bit RS485direction DDRD l BIT ZIGBEE RESET BIT ENABLE RXD LINK PC BIT ENABLE RXD LINK ZIGBEE PORTD amp BV BIT LINK PLUGIN no pull up BV BIT ZIGBEE RESET PORTD BV BIT ENABLE RXD LINK PC PORTD BV BIT ENABLE RXD LINK ZIGBEE n TxPacket send data to RS485 TxPacket needs 3 parameter ID of Dynamixel Instruction byte Length of parameters TxPacket return length of Return packet from Dynamixel byte TxPacket byte byte bInstruction byte bParameterLength byte bCount bCheckSum bPacketLength gbpTxBuffer 0 Oxff gbpTxBuffer 1 Oxff gbpTxBuffer 2 gbpTxBuffer 3 bParameterLength 2 Length Paramter Instruction Checksum
7. m d 1 if the instruction sent is out of the defined Set to 1 if the internal temperature of the Dynamixel Overheating unit above the operating temperature range as Error Angle Limit Set as 1 if the Goal Position is set outside of the Error range between CW Angle Limit and CCW Angle Limit Input Voltage Set to 1 if the voltage is out of the operating voltage Error range as defined in the control table 11 DYNAMIXEL PARAMETERO N CHECK SUM AX S1 ROBOTIS Used if additional information is needed The computation method for the Check Sum is as the following Check Sum ID Length Instruction Parameter1 Parameter N If the calculated value is larger than 255 the lower byte is defined as the checksum value represents the NOT logic operation 12 DYNAMIXEL 3 ROBOTIS Address Access Initial Value 3 4 Control 010 00 Model NumberiL RD 130x0D Table 100X013 Model NumberH RD Ofoxoo 2 0X02 Version of Firmware RD O O 310X03 RW 100 0x64 40X04 Baud Rate RDWR 10x0 5 Return Delay Time 250 0 610X06 Reserved 255 0xFF 710X07 Reserved RDWR 30 03 810X08 Reserved 255 0XFF 9 0 09 Reserved
8. 0X00 0X10 0X00 0X50 0X01 0X01 0X20 0X02 0X60 0X03 0X02 0X30 0X00 0X70 0X01 0X03 0X20 0X02 0X80 0X12 No status packets are returned since the Broadcasting ID was used 29 DYNAMIXEL 3 ROBOTIS 5 Example We will give an example of Dynamixel AX S1 with following setup parameter Reset state ID 100 Baudrate 1MBPS Example 6 Dynamixel AX S1 that has ID 100 reads the Model Number and Firmware Version Instruction Packet Instruction READ_DATA Address 0x00 Length 0x03 Communication gt Dynamixel FF FF 64 04 02 00 03 95 LEN 008 lt Dynamixel FF FF 64 05 00 00 00 12 77 LEN 009 Status Packet Result Model Number 13 0x0D in case of AX S1 Firmware Version 0x12 Example 7 Dynamixel AX S1 that has ID 100 changes ID to 0 Instruction Packet Instruction WRITE_DATA Address 0x03 DATA 0x00 Communication gt Dynamixel FF FF 64 04 03 03 00 91 LEN 008 lt Dynamixel FF FF 64 02 00 99 LEN 006 Status Packet Result NO ERROR Example 8 Change the Baud Rate of Dynamixel to 57600 bps Instruction Packet Instruction WRITE DATA Address 0x04 DATA 0x22 Communication gt Dynamixel FF FF 64 04 03 04 22 6E LEN 008 lt Dynamixel FF FF 64 02 00 99 LEN 006 Status Packet Result NO ERROR 30 DYNAMIXEL Example 9 Instruction Packet Communication Status Packet Result Example 10 Instruction Packet Communicat
9. Error RxD Timeout CLEAR_BUFFER if bLength gt 3 checking is available if gopRxBuffer 0 Oxff gopRxBuffer 1 Oxff TxDString nn Error Wrong Header CLEAR_BUFFER return 0 if gbpRxBuffer 2 gbpTxBuffer 2 TxDString nn Error TxID RxID CLEAR_BUFFER return 0 if gopRxBuffer 3 bLength 4 TxDString r n Error Wrong Length CLEAR_BUFFER return 0 for bCount 2 bCount lt bLength bCount bChecksum ROBOTIS gbpRxBuffer bCount if bChecksum TxDString nn Error Wrong CheckSum CLEAR BUFFER return 0 return bLength PrintBuffer print data in Hex code PrintBuffer needs two parameter name of Pointer gbpTxBuffer gppRxBuffer d void PrintBuffer byte bpPrintBuffer byte bLength byte bCount for bCount 0 bCount lt bLength bCount TxD8Hex bpPrintBuffer bCount TxD8 TxDString LEN TxD8Hex bLength TxD8 Print value of Baud Rate I void PrintBaudrate void TxDString n RS232 TxD32Dec 16000000L 8L long UBRR1L 1L TxDString BPS TxDString _ RS485 TxD32Dec 16000000L 8L long UBRROL 1L TxDString BPS Hardware Dependent Item define TXD1 READY bit is set UCSR1A 5 UCSR1A_Bit5 define TXD1_DATA UDR1 define RXD1 READY bit is set UCSR1A 7 define RXD1 DATA UDR1 define TXDO READY bit is set UCSROA 5 define TXDO DATA
10. UDRO define RXDO READY bit is set UCSRO0A 7 define RXDO DATA UDRO fF Seriallnitialize set Serial Port to initial state Vide Mega128 Data sheet about Setting bit of register Seriallnitialize needs port Baud rate Interrupt value void Seriallnitialize byte bPort byte bBaudrate byte bInterrupt if bPort SERIAL PORTO UBRROH 0 UBRROL bBaudrate UCSROA 0x02 UCSROB 0x18 if bInterrupt amp RX INTERRUPT sbi UCSROB 7 RxD interrupt enable UCSROC 0x06 UDRO OxFF Sbi UCSROA 6 SET TXDO FINISH Note set 1 then 0 is read else if bPort SERIAL PORT1 0 UBRRIL bBaudrate UCSR1A 0x02 UCSR1B 0x18 if bInterrupt amp RX INTERRUPT sbi UCSR1B 7 RxD interrupt enable UCSR1C 0x06 UDR1 OxFF sbi UCSR1A 6 SET_TXD1_FINISH Note set 1 then 0 is read TxD8Hex print data seperatly ex 1 gt void TxD8Hex byte bSentData byte bTmp bTmp byte bSentData gt gt 4 amp 0xOf 0 40 DYNAMIXEL if oTmp gt 9 bTmp 7 TxD8 bTmp bTmp byte bSentData amp OxOf byte 0 if oTmp gt 9 bTmp 7 TxD8 bTmp TxD80 send data to USART 0 i void TxD80 byte bTxdData while ITXDO READY TXDO DATA bTxdData TXD81 send data to USART 1 void TxD81 byte bTxdData while ITXD1 READY TXD1 DATA bTxaData fF TXD32Dex change
11. possible to transmit and receive infrared data between sensor modules It has built in micro internal microphone making it possible not only to detect current sound level and maximum loudness but also an ability to count the number of sounds for instance the numbers of handclapping Built in buzzer allows the playback of musical notes and other special note effects 1 2 Main Specifications Dynamixel Networked Sensor Module AX S1 for Robot Application Weight Resolution Voltage Supply Current Operate Temperature Command Signal Protocol Type Link Physical ID Communication Speed Feedback Material 37g 10bit 1024 7V 10V Recommended voltage 9 6V 40mA 5 C 85 Digital Packet Half duplex Asynchronous Serial Communication 8bit 1stop No Parity TTL Level Multi Drop daisy chain type Connector 254 ID 0 253 7343bps 1 Mbps Infra red Sensor Internal Mic Temperature Input Voltage IR Remocon Tx Rx Data etc Engineering Plastic ROBOTIS 2 Dynamixel Operation 2 1 Mechanical Assembly Frames Provided The two frames provided with AX S1 are shown below OF 12SH OF 12S OF 12SH Installation The OF 12SH hinge frame can be installed on the AX 12 as the following Exploded view Assembled OF 12S Installation The OF 12S side mount frame can be installed on the AX 12 as the following The OF 12S can be mounted on any of the three faces left right o
12. 4 3 1 REG_WRITE Function The REG_WRITE instruction is similar to the WRITE_DATA instruction but the execution timing is different When the Instruction Packet is received the values are stored in the Buffer and the Write instruction is under a standby status At this time the Registered Instruction register Address 0x2C is set to 1 After the Action Instruction Packet is received the registered Write instruction is finally executed Length N 3 is the number of data to be written Instruction 0X04 Parameter1 Starting address of the location where the data is to be written Parameter2 1st data to be written Parameter3 Parameter N 1 2nd data to be written Nth data to be written 4 3 2 ACTION Function Triggers the action registered by the REG_WRITE instruction Length 0X02 Instruction 0X05 Parameter NONE The ACTION instruction is useful when multiple Dynamixel actuators need to move simultaneously When controlling multiple Dynamixel actuator units slight time delays can occur between the 1st and last units to receive an instruction The Dynamixel actuator handles this problem by using the ACTION instruction Broadcasting The Broadcast ID OXFE is used when sending ACTION instructions to more than two Dynamixel actuators Note that no packets are returned by this operation 26 DYNAMIXEL 4 4 PING Function Length Instruction Parameter Example 3 4 5 RESET Function Length Instruction
13. ARGIN 27 define P CW COMPLIANCE SLOPE 28 define P CCW COMPLIANCE SLOPE 29 define P GOAL POSITION 30 tdefine GOAL POSITION H 31 define P GOAL SPEED 32 tdefine P GOAL SPEED 33 define P TORQUE LIMIT L 84 define P TORQUE LIMIT H 35 define P PRESENT POSITION L 36 define P PRESENT POSITION H 37 define P PRESENT SPEED L 38 define P PRESENT SPEED H 39 define P PRESENT LOAD L 40 define P PRESENT LOAD H 41 define P PRESENT VOLTAGE 42 define P PRESENT TEMPERATURE 43 define P REGISTERED INSTRUCTION 44 define P PAUSE TIME 45 define P MOVING 46 define P LOCK 47 define P PUNCH 48 define P PUNCH 49 Instruction define INST_PING 0x01 define INST_READ 0x02 define INST WRITE 0x03 define INST WRITE 0x04 define INST ACTION 0x05 define INST RESET 0x06 define INST DIGITAL RESET 0x07 define INST SYSTEM READ 0 0 define INST SYSTEM WRITE 0x0D define INST SYNC WRITE 0x83 define INST SYNC REG WRITE 0x84 define CLEAR BUFFER gbRxBufferReadPointer gbRxBufferWritePointer define DEFAULT RETURN PACKET SIZE 6 define BROADCASTING 10 Oxfe TxD8 TxD81 define RxD8 RxD81 Hardware Dependent Item define DEFAULT_BAUD_RATE 34 57600bps at 16MH For CM 5 N define 5485 PORTE amp BV PE2 485 DIRECTION 1 define 5485 RXD PORTE
14. BOTIS C Language Example Dinamixel access with Atmega128 fF The Example of Dynamixel Evaluation with Atmega128 Date 2005 5 11 Author BS KIM fF included files define ENABLE DEFINITIONS include lt io h gt include lt inttypes h gt include lt avr io h gt include lt avr interrupt h gt include lt avr signal h gt define cbi REG8 BITNUM REG8 amp _BV BITNUM define sbi REG8 BITNUM _BV BITNUM typedef unsigned char byte typedef unsigned int word define ON 1 define OFF 0 define define OFF 1 Control Table Address IEEPROM AREA define P MODEL NUMBER 1 0 define P MODOEL NUMBER H 1 define P VERSION 2 define P ID 3 define P BAUD RATE 4 define P RETURN DELAY TIME 5 define P CW ANGLE LIMIT 6 define P CW ANGLE LIMIT H 7 define P CCW ANGLE LIMIT L 8 define P CCW ANGLE LIMIT 9 define P SYSTEM DATA2 10 define P LIMIT TEMPERATURE 11 define P DOWN LIMIT VOLTAGE 12 define P UP LIMIT VOLTAGE 13 define P MAX TORQUE 14 define P TORQUE 15 define P RETURN LEVEL 16 define P ALARM LED 17 define P ALARM SHUTDOWN 18 define P MODE 19 define P DOWN CALIBRATION 20 define P DOWN CALIBRATION 21 define P CALIBRATION 22 define P CALIBRATION 23 define P TORQUE ENABLE 24 define P LED 25 define P CW COMPLIANCE MARGIN 26 define P CCW COMPLIANCE M
15. Count 0 bCount lt 0x0A bCount bTxPacketLength TxPacket bCount INST PING 0 bRxPacketLength RxPacket 255 TxDString r n TxD PrintBuffer gbpTxBuffer bTxPacketLength TxDString RxD PrintBuffer gopRxBuffer bRxPacketLength if bRxPacketLength DEFAULT RETURN PACKET SIZE TxDString Found ID TxD8Hex bCount bID bCount TxDString r n n Example 2 Read Firmware Version Any Key to Continue RxD8 gbpParameter 0 P_VERSION Address of Firmware Version gbpParameter 1 1 Read Length bTxPacketLength TxPacket bID INST_READ 2 bRxPacketLength RxPacket DEFAULT_RETURN_PACKET_SIZE gbpP 1 TxDString r n TxD PrintBuffer gbpTxBuffer bTxPacketLength TxDString r n RxD PrintBuffer gbpRxBuffer oRxPacketLength if oRxPacketLength DEFAULT RETURN PACKET SIZE gbpParameter 1p TxDString r n Return Error TxD8Hex gbpRxBuffer 4 TxDString r n Firmware Version TxD8Hex gbpRxBuffer 5 TxDString r n n Example 3 LED ON Any Key to RxD8 gbpParameter 0 LED Address of LED gbpParameter 1 1 Writing Data bTxPacketLength TxPacket bID INST WRITE 2 bRxPacketLength RxPacketDEFAULT RETURN PACKET SIZE TxDString r n TxD PrintBuffer gbpTxBuffer bTxPacketLength TxDString r n RxD PrintBuffer gbpRxBuffer oRxPacketLength x TxDString r n n Example 4 LED OFF Any Key to C
16. Detected Count RDWR RAM 38 0X26 Sound Detected Timell RDWR Area 3910 27 Sound Detected TimelH RDWR 4010 28 Buzzer Index RDWR A1 0X29 Buzzer Time RDWR 4210 2 Present Voltage J 43 0X2B Present Temperature RD 14410 2 Registered Instruction RD WR O 0x00 A5 0X2D Reserved AG 0xX2E Remocon Arrived RD O 0xO0 Lock amp S 48 0x30 IRRemoconmXData 4910 81 IR Remocon RX Data 1i RD 2 90 0x32 IR Remocon TX Data 0 RDWR 51 0x33 IR RemoconTXDatai RDWR 52 0x34 Obstacle Detected Compare RDWR 93 0x35 Light Detected Compare RDWR 13 DYNAMIXEL Control Table RAM and EEPROM Initial Value Address 0x00 0x01 Address 0x02 Address 0x03 Address 0x04 Note AX S1 ROBOTIS The Control Table contains information on the status and operation of the Dynamixel actuator The Dynamixel actuator is operated by writing values to its control table and its status is checked by reading values off its control table The data values for the RAM area will be set to the default initial values whenever the power is turned on However the data values for the EEPROM area are n
17. NAMIXEL AX S1 ROBOTIS exceeding standard level As an example number of handclap can be counted by using this However the counter will not count for next 80msec after counting once to prevent a single handclap to be recognized as multiple claps 800msec after the last count the value of sound detection frequency counter will be saved Timeline of sound detection frequency will be counted internally and then the value of sound detection frequency will be saved after 800msec After saving the sound detection frequency value will reset to 0 Below illustration explains the details Sound Detected Count 0 0 1 1 1 2 2 Internal count 0 1 1 2 Address 0x26 0x27 Sound Detected Time Anytime Sensor Module AX S1 counts of sound detection it saves the time of sound occurrences This function exists to detect the direction of sound and thus it needs at least two AX S1s and by using speed of sound around 343m sec in 20 C it uses the time differences of sound arrival in microphone of two AX S1s Sound Detected Time is internally counted counts 0 65535 repeatedly and anytime Sound Detected Count is increased it saves the counted value Therefore by placing the two AX S1s in appropriate distance and by simultaneously using broadcasting command and initializing to O value the time differenced sound occurs corresponding to sound direction If the placement is face to face the time differences will be almost sim
18. Parameter AX S1 ROBOTIS Does not command any operations Used for requesting a status packet or to check the existence of a Dynamixel actuator with a specific ID 0x02 0X01 NONE Obtaining the status packet of the Dynamixel actuator with an ID of 1 Instruction Packet OXFF OXFF 0X01 0X02 0X01 OXFB URP NS ID LENGTH INSTRUCTION CHECKSUM The returned Status Packet is as the following Status Packet OXFF OXFF 0X01 0X02 0X00 OXFC NPD SEN ID LENGTH ERROR CHECKSUM Regardless of whether the Broadcasting ID is used or the Status Return Level Address 16 is 0 a Status Packet is always returned by the PING instruction Changes the control table values of the Dynamixel actuator to the Factory Default Value settings 0X02 0X06 NONE 27 DYNAMIXEL 3 ROBOTIS Resetting the Dynamixel actuator with an ID of 0 Instruction Packet OXFF OXFF 0X00 0X02 0X06 7 E AS ID LENGTH INSTRUCTION CHECKSUM The returned Status Packet is as the following Status Packet OXFF OXFF 0X00 0X02 0X00 OXFD MEN A ID LENGTH ERROR CHECKSUM Note the ID of this Dynamixel actuator is now changed to 1 after the RESET instruction 4 6 SYNC WRITE Function Used for controlling many Dynamixel actuators at the same time The communication time decreases by the Synch Write instruction since many instructions can be transmitted by a
19. Users Manual 2006 06 14 Closer to Real ROBOTIS Sensor Module Dynamixel AX S1 vr DYNAMIXEL AX S1 www robotis com DYNAMIXEL WWW robotis com amp DYNAMIXEL 3 ROBOTIS Contents 1 Summary 1 1 Overview and Characteristics of AX S1 Page 2 1 2 Main Specifications Page 3 2 Dynamixel Operation 2 1 Mechanical Assembly Page 4 2 2 Connector Assembly Page 5 2 3 Dynamixel Wiring Page 6 3 Communication Protocol 3 1 Communication Overview Page 9 3 2 Instruction Packet Page 10 3 3 Status Packet Page 11 3 4 Control Table Page 13 4 Instruction Set and Examples 4 1 WRITE DATA Page 24 4 2 READ DATA Page 25 4 3 REG WRITE and ACTION Page 26 4 4 PING Page 27 4 5 RESET Page 27 4 6 SYNC WRITE Page 28 5 Example Page 30 Appendix Page 36 DYNAMIXEL AX S1 ROBOTIS 1 Dynamixel AX S1 1 1 Overview and Characteristics of AX S1 Dynamixel AX S1 Precision Control Feedback Alarm System Communication Distributed Control Engineering Plastic Frames Dynamixel Sensor Module AX S1 is a Smart Sensor Module that integrates the functions of sound sensor infrared remote control receiver infrared distance sensor light sensor buzzer as well as the driver control unit and network Compact in size AX S1 has various functions and it is made up of special materials that can withstand even the extreme external force In addition it can readily recognize subtle changes such as int
20. a Buzzer Time AX S1 has a capability that controls the time interval of buzzer sound Controllable within 0 1 second unit the minimum length of time is 0 3 second and the maximum length of time is 5 0 seconds That is if user inputs the value of 0 3 the buzzer goes off in 0 3 second whereas if the input value is 50 or above it goes off in 5 second When the buzzer sound completes the value automatically initializes back to 0 There are two special features of AX S1 buzzer time First is the function that sets the buzzer to sound constantly If user inputs value of 254 on buzzer time and input the melody note number on buzzer index the buzzer sounds the note constantly To stop the buzzer input 0 on buzzer time The second function plays back the special notes If user inputs value of 255 on buzzer time value between 0 26 on buzzer index 27 various melodies is replayed corresponding to each number When the melody playback is finished the value automatically initializes back to 0 Present Voltage Currently authorized voltage of Dynamixel AX S1 It reality it is multiple of 10 of actual voltage That is if 10V it is read as 100 0 64 Present Temperature Inner Celsius temperature of Dynamixel AX S1 Registered Instruction If it is registered by the command of REG_WRITE it is set to 1 and if it is registered by Action command it is changed to 0 after command is completed IR Remocon Arrived AX S1 Sensor Mo
21. amp _BV PE2 PORTE BV PE3 For CM 2 485 DIRECTION 0 define 5485 TXD PORTE BV PE2 485 DIRECTION 1 define 5485 PORTE amp 2 485 DIRECTION 0 I define 0 FINISH UCSROA 6 This bit is for checking TxD Buffer in CPU is empty or not H define TXD1 FINISH UCSR1A 6 define SET TxDO FINISH sbi UCSROA 6 define RESET TXDO FINISH cbi UCSROA 6 define CHECK TXDO FINISH bit is set UCSRO0A 6 define SET TxD1 FINISH Sbi UCSR1A 6 define RESET TXD1 FINISH cbi UCSR1A 6 define CHECK TXD1 FINISH bit is set UCSR1A 6 define INTERRUPT 0x01 define TX INTERRUPT 0x02 define OVERFLOW INTERRUPT 0x01 define SERIAL PORTO 0 define SERIAL 1 define 5485 DIRECTIONO 0x08 Port E define 5485 DIRECTION1 0x04 Port E define ZIGBEE RESET PD4 out default 1 define ENABLE RXD LINK PC 5 out default 1 define ENABLE RXD LINK ZIGBEE PD6 out default O define LINK PLUGIN PD7 in no pull up id TxD81 byte bTxdData id TxD80 byte bTxdData id TxDString byte bData id TxD8Hex byte bSentData id TxD32Dec long ILong byte RxD81 void id MiliSec word wDelayTime id Portlnitialize void id Seriallnitialize byte bPort byte bBaudrate byte binterrupt byte TxPacket byte byte bIns
22. cation Status Packet Result Example 14 Instruction Packet Communication Status Packet Result Example 15 Instruction Packet Communication Status Packet Result AX S1 ROBOTIS Dynamixel that has ID 100 changes the light sensor standard value to 10 Instruction WRITE_DATA Address 0x35 DATA gt Dynamixel FF FF 64 04 03 35 55 LEN 08 lt Dynamixel FF FF 64 02 00 99 LEN 006 NO ERROR Dynamixel that has ID 100 sets the parameter so that status packet is never returned Instruction WRITE DATA Address 0x10 DATA 0x00 gt Dynamixel FF FF 64 04 03 10 00 84 LEN 008 Dynamixel FF FF 64 02 00 99 LEN 006 NO ERROR Status packet is not returned from next instruction Dynamixel AX S1 that has ID100 reads the right distance sensor value Instruction READ DATA Address 0x1C DATA 0x01 gt Dynamixel FF FF 64 04 02 1C 01 78 LEN 008 lt Dynamixel FF FF 64 03 00 21 77 LEN 007 NO ERROR The right distance sensor value is 0x21 32 DYNAMIXEL Example 16 Instruction Packet Communication Status Packet Result Example 17 Instruction Packet Communication Status Packet Result Example 18 Instruction Packet Communication Status Packet Result Example 19 Case 1 Instruction Packet AX S1 ROBOTIS Dynamixel AX S1 that has ID 100 reads the center ligh
23. data to decimal number system void TxD32Dec long byte bCount bPrinted long ITmp lDigit bPrinted 0 if ILong lt 0 ILong TxD8 IDigit 10000000001 for bCount 0 bCount lt 9 bCount ITmp byte ILong IDigit TxD8 byte ITmp 0 ROBOTIS bPrinted 1 o if bPrinted TxD8 byte ITmp 0 long ITmp IDigit IDigit IDigit 10 ITmp byte ILong IDigit if ITmp TxD8 byte ITmp 0 TxDString prints data in ACSII code T void TxDString byte bData while bData TxD8 bData n RxD81 read data from UART1 RxD81 return Read data ui byte RxD81 void while IRXD1 READY return RXD1 DATA SIGNAL UARTO Rx Interrupt write data to buffer SIGNAL SIG_UARTO_RECV gbpRxInterruptBuffer goRxBufferWritePointer RXDO_DATA 41 DYNAMIXEL 3 ROBOTIS Connector Company Name Molex Pin Number 3 Model Number Molex Part Number Old Part Number 22 03 5045 5267 03 Female 50 37 5043 5264 03 Temperature range 40 C to 105 C Contact Insertion Force max 14 7N 3 30 Ib Contact Retention Force min 14 7N 3 30 Ib www molex com or www molex co jp for more detail information Female Connector Male Connector CIRCUIT 1 250 E NUI E S on me LAYOUT OOMPONENT SIDE 460 RECOMMENDED
24. dule has infrared sensor module built in in center and thus it allows infrared remocon communication between AX S1 s 2 byte transmission is possible Be cautious however as the infrared emitter is built into left center right it can transmit infrared remocon in all directions but as infrared remocon sensor is built in only in center its remocon data transmission is limited to certain angle When Infrared remocon data is received by sensor IR Remocon Arrived value changes to 2 signaling 2 byte transmission If you read IR Remocon RX data the IR Remocon 21 DYNAMIXEL Address 0x2F Address 0x30 0x31 Address 0x32 0x33 Address 0x34 Address 0x35 AX S1 ROBOTIS and automatically initializes back to 0 Lock If the setting is set to 1 it can only write in range from Address 0X18 to Address0x23 and writing to other ranges is forbidden Once it is locked it can be unlocked only after power off power down IR Remocon RX Data Address where data from infrared remocon sensor is saved It reads the value and the IR Remocon Arrived value automatically initializes back to 0 IR Remocon TX Data Address where remocon data that will be transmitted via infrared emitter is written to Upon writing of 2 byte value remocon data is immediately transmitted Obstacle Detected Compare Value Control Table RAM Range where obstacle detected compare value of Address 0x14 is saved The IR sensors of AX S1 emit powerful infrared ra
25. ere the data is to be written 1st data to be written 2nd data to be written Nth data to be written 24 DYNAMIXEL 3 ROBOTIS Example 1 Setting the ID of a connected Dynamixel actuator to 1 Write 1 to address 3 of the control table The ID is transmitted using the Broadcasting ID OxFE Instruction Packet OXFF OXFF OXFE 0X04 0X03 0X03 0X01 OXF6 LINE NE 3 LENGTH INSTRUCTION PARAMETERS CHECKSUM Because it was transmitted with a Broadcast ID OXFE no status packets are returned 4 2 READ DATA Function Read data from the control table of a Dynamixel actuator Length 0X04 Instruction 0X02 Parameter1 Starting address of the location where the data is to be read Parameter2 Length of the data to be read Example 2 Reading the internal temperature of the Dynamixel actuator with an ID of 1 Read 1 byte from address 2 of the control table Instruction Packet OXFF OXFF 0X01 0X04 0X02 0X2B 0X01 0XCC lid ies ERR ID LENGTH INSTRUCTION PARAMETERS CHECKSUM The returned Status Packet will be as the following Status Packet OXFF OXFF 0X01 0X03 0X00 0X20 OXDB HM MR EOS ID LENGTH ERROR IPARAMETER1 CHECKSUM The data read is 0x20 Thus the current internal temperature of the Dynamixel actuator is approximately 32 0X20 25 DYNAMIXEL 3 ROBOTIS 4 3 REG ACTION
26. ernal temperature service voltage and other internal conditions and has built in capability to resolve the situations at hand Followings are the strengths of the Dynamixel Sensor Module AX S1 Capability to read sensor that has been detected through 1024 steps resolution Feedback capabilities for the values of infrared distance sensor light sensor sound Sensor Alarm system that detects out of the range values of internal temperature torque service voltage were preset by users Alarming Wiring is easy with daisy chain connection and it support communication speeds up to 1M BPS Position velocity compliance and torque can be set with a single command packet thus enabling the main processor to control many Dynamixel units even with very few resources The main body of the unit is made with high quality engineering plastic which enables it to handle high torque loads Hinge and side mount frame are included as basics AX S1 is compatible with AX 12 frames 10096 making it possible to use in various ways Be cautious as unlike AX 12 Horn part of AX S1 does not turn so assemble frame in correct angle with the usage purpose in mind DYNAMIXEL Infra red Sensor Remocon Sensor Internal Mic Buzzer AX S1 ROBOTIS It is embedded with three directions infrared sensor making it possible to detect left center right distance angle as well as the light It has built in remote control sensor in center making it
27. ess 0x28 DATA 0x05 OxFF Communication gt Dynamixel FF FF 64 05 03 28 05 FF 67 LEN 009 Dynamixel FF FF 64 02 00 99 LEN 006 Status Packet Result NO ERROR Example 20 Dynamixel that has ID 0 sets the parameter so that it cannot write anywhere except in 0 18 AddressOx23 Instruction Packet Instruction WRITE DATA Address Ox2F DATA 0x01 Communication gt Dynamixel FF FF 00 04 03 2F 01 C8 LEN 008 lt Dynamixel FF FF 00 02 00 FD LEN 006 Status Packet Result NO ERROR Once locked the only way to unlock it is to remove the power If an attempt is made to access any locked data an error is returned gt Dynamixel FF FF 00 05 03 30 40 00 87 LEN 009 Dynamixel FF FF 00 02 08 F5 LEN 006 Range Error 34 DYNAMIXEL 3 ROBOTIS Example 21 Dynamixel that has ID 0 sets the minimum output value punch to 0x40 Instruction Packet Instruction WRITE_DATA Address 0x30 DATA 0x40 0x00 Communication gt Dynamixel FF FF 00 05 03 30 40 00 87 LEN 009 lt Dynamixel FF FF 00 02 00 FD LEN 006 Status Packet Result NO ERROR 35 DYNAMIXEL Half duplex UART Return Delay Time Tx Rx Direction AX S1 ROBOTIS Appendix Half duplex UART is a serial communication protocol where both TxD and RxD cannot be used at the same time This method is generally used when many devices need to be connected to a single bus Since more than one de
28. g to sensor of IR Obstacle Detected Address 0x20 and conversely when the sensor value is lower than a standard value it is set to 0 15 DYNAMIXEL Address 0x15 Address 0x1A 0x1C Address 0x1D 0x1F AX S1 ROBOTIS The Obstacle Detected Compare Value is allocated in the ROM Address 0x14 and RAM Address 0x34 and when the power switched on the value of EEPROM is copied to RAM Light Detected Compare Value Dynamixel Sensor Module sets the standard value for the light detection that is in the direct line of infrared sensor parameter If the light sensor value is greater than a standard value as it indicates a light that is brighter than set light parameter the bit is set to a value of 1 in corresponding to sensor of Light Detected and conversely it is set to 0 when it is lower than a standard value The Light Detected Compare Value is allocated in the ROM Address 0x15 and RAM Address 0x35 and when the power switched on the value of EEPROM is copied to RAM Subsequent Address 0x18 is in RAM domain Infrared Sensor Data Left Center Right It is the infrared sensor value of the Dynamixel Sensor Module for measuring distance The infrared sensor of AX S1 emits high frequency Infrared and the emitted ray bounces off an object or wall to return to the IR sensor The Infrared receiver of 51 measures amount of infrared returned High value will be acquired when an object or wall is near the sensor Measured value ra
29. ion Status Packet Result Example 11 Instruction Packet Communication Status Packet Result Example 12 Instruction Packet Communication Status Packet Result AX S1 ROBOTIS Dynamixel that has ID 100 resets the Return Delay Time to 4uSec Return Delay Time Value of 1 is applicable to 2uSec Instruction WRITE_DATA Address 0x05 DATA 0x02 gt Dynamixel FF FF 64 04 03 05 02 8D 008 lt Dynamixel FF FF 64 02 00 99 LEN 006 NO ERROR It is good idea to set the Return Delay Time to minimum value within allowable range in the main controller Dynamixel that has ID 100 resets the distance sensor standard value to 60 Instruction WRITE_DATA Address 0x34 DATA 0x3C gt Dynamixel FF FF 64 04 03 34 24 LEN 008 lt Dynamixel FF FF 64 02 00 99 LEN 006 NO ERROR Dynamixel that has ID 100 resets the maximum value of temperature to 80 Instruction WRITE_DATA Address 0x0B DATA 0x50 gt Dynamixel FF FF 64 04 03 50 39 LEN 008 lt Dynamixel FF FF 64 02 00 99 LEN 006 NO ERROR Dynamixel that has ID 100 sets the voltage to 10V 17V 10V is represented by 100 0x64 and 17V by 170 Instruction WRITE DATA Address DATA 0x64 OxAA gt Dynamixel FF FF 64 05 03 64 AA 79 LEN 009 Dynamixel FF FF 64 02 00 99 LEN 006 NO ERROR 3l DYNAMIXEL Example 13 Instruction Packet Communi
30. issions at the same time should be maintained when controlling the Dynamixel actuators Main ee eee ee Controller Multi Drop Link Caution Please ensure that the pin assignments are correct when connecting the Dynamixel actuators Check the current consumption when powering on The current consumption of a single Dynamixel actuator unit in standby mode should be no larger than 50mA Connection Status Verification When power is applied to the Dynamixel actuator the LED blinks twice to confirm its connection Inspection If the above operation was not successful then check the connector pin assignment and the voltage current limit of the power supply DYNAMIXEL 3 ROBOTIS 3 Communication Protocol 3 1 Communication Overview Packet The main controller communicates with the Dynamixel units by sending and receiving data packets There are two types of packets the Instruction Packet sent from the main controller to the Dynamixel actuators and the Status Packet sent from the Dynamixel actuators to the main controller Instruction Packet Main OO Controller Status Packet 1m 1 ees YeR Communication For the system connection below if the main controller sends an instruction packet with the ID set to N only the Dynamixel unit with this ID value will return its respective status packet and perform the required instruction
31. ixels DYNAMIXEL oen ROBOTIS Bioloid A robot can be built using only the CM 5 controller a number of AX 12 actuators and AX S1 An edutainment robotic kit named Bioloid is available which is based on the CM 5 controller the AX 12 actuators and AX S1 An example of a robot built with Bioloid For details please refer to the Bioloid manual Connection to UART To control the Dynamixel actuators the main controller needs to convert its UART signals to the half duplex type The recommended circuit diagram for this is shown below DIRECTION PORT 74HC126 VDD PIN2 GND PIN1 74HC04 CM 5 internal circuit HALF DUPLEX UART The power is supplied to the Dynamixel actuator from the main controller through Pin 1 and Pin 2 of the Molex3P connector The circuit shown above is presented only to explain the use of half duplex UART The CM 5 controller already has the above circuitry built in thus the Dynamixel actuators can be directly connected to it The direction of data signals on the TTL level TxD and RxD depends on the DIRECTION PORT level as the following DYNAMIXEL 3 ROBOTIS When the DIRECTION PORT level is High the signal TxD is output as Data When the DIRECTION PORT level is Low the signal Data is input as RxD Half Duplex UART A multi drop method of connecting multiple Dynamixel actuators to a single node is possible by using the half duplex UART Thus a protocol that does not allow multiple transm
32. ket where its value is Number of parameters 2 The instruction for the Dynamixel actuator to perform Used if there is additional information needed to be sent other than the instruction itself The computation method for the Check Sum is as the following Check Sum ID Length Instruction Parameter1 Parameter If the calculated value is larger than 255 the lower byte is defined as the checksum value represents the NOT logic operation 10 DYNAMIXEL 3 ROBOTIS 3 3 Status Packet Return Packet The Status Packet is the response packet from the Dynamixel units to the Main Controller after receiving an instruction packet The structure of the status packet is as the following ID LENGTH ERROR PARAMETER2 PARAMETER CHECK SUM The meanings of each packet byte definition are as the following OXFF The two OXFF bytes indicate the start of the packet ID The unique ID of the Dynamixel unit returning the packet LENGTH The length of the packet where its value is Number of parameters 2 ERROR The byte representing ERROR sent from the Dynamixel unit The meaning of each bit is as the following Set to 1 if an undefined instruction is sent or an action instruction is sent without a Reg Write Set to 1 if the checksum of the instruction packet is incorrect
33. ketDEFAULT RETURN PACKET SIZE TxDString r n TxD PrintBuffer gbpTxBuffer bTxPacketLength TxDString r n RxD PrintBuffer gbpRxBuffer oRxPacketLength TxDString r n n Example 7 Go 0x00 with Speed 0x40 Any Key to Continue RxD8 gbpParameter 0 P_GOAL_POSITION_L Address of Firmware Version gbpParameter 1 0x00 Writing Data P GOAL POSITION L gbpParameter 2 0x00 Writing Data P GOAL POSITION gbpParameter 3 0x40 Writing Data P GOAL SPEED L gbpParameter 4 0x00 Writing Data P GOAL SPEED H bTxPacketLength TxPacket bID INST WRITE 5 bRxPacketLength RxPacketDEFAULT RETURN PACKET SIZE TxDString r n TxD PrintBuffer gbpTxBuffer bTxPacketLength TxDString r n RxD PrintBuffer gbpRxBuffer oRxPacketLength TxDString r n n Example 8 Go Ox3ff with Speed Ox3ff Any Key to Continue RxD8 gbpParameter 0 P_GOAL_POSITION_L Address of Firmware Version gbpParameter 1 Oxff Writing Data P GOAL POSITION gbpParameter 2 0x03 Writing Data P GOAL POSITION gbpParameter 3 Writing Data P GOAL SPEED L gbpParameter 4 0x03 Writing Data P GOAL SPEED bTxPacketLength TxPacket bID INST WRITE 5 bRxPacketLength RxPacketDEFAULT RETURN PACKET SIZE TxDString r n TxD PrintBuffer gbpTxBuffer bTxPacketLength TxDString r n RxD PrintBuffer gbpRxBuffer oRxPacketLength TxDString r n n Example 9 Torque Off Any Key to Continue
34. lumination and sets luminosity detection flag bit to 1 Bit representation of each sensor is the same with bit representation of object detection flag setting Refer to Address 0x20 Sound Data It represents intensity of sound waves detected through the microphone of AX S1 As shown in the illustration below the magnitude of sound wave fluctuates Value measured during noiseless state is around 127 128 Ox7F 0x80 and value ranging from 0 to 255 OxFF will be measured for noisy state Sound wave will be measured at the frequency of 3800 input per second Sound level 222 Time 17 DYNAMIXEL ROBOTIS Address 0x24 Sound Data Max Hold AX S1 has put aside a value for loudest sound That is when the present sound data exceeds the Sound Data Max Hold value the present sound data will be copied as the Sound Data Max Hold Therefore sound data less than 128 will be ignored and loudest sound intensity will be updated Below illustration explains the details Sound level sound Data Max Hold Time Be cautious as the Sound Data Max Hold is 255 OxFF and there is no value that can represent intensity of loudness greater than the optimal loudness and thus 255 OxFF will be maintained as the Sound Data Max Hold Therefore value of the Sound Data Max Hold should be set at 0 for measuring the value of maximum loudness Address 0x25 Sound Detected Count AX S1 has a counter that counts occurrence of loud sound 18 DY
35. nges from 0 255 Only 255 will be acquired until a certain distance Due to the innate properties of infrared measurement method value of reflected Infrared ray amount might differ depending on the color of an object or surface texture Luminosity Left Center Right It is the light sensor value of the Dynamixel Sensor Module The technological concept is similar to the infrared sensor However this sensor only measures amount of infrared ray emitted from source of illumination Therefore light sensor value can be measured from illuminations such as incandescent bulb emitting large amount of infrared Lighter or candle light can be measured from short distance as well Measured value ranges from 0 255 16 DYNAMIXEL Address 0x20 Address 0x21 Address 0x23 AX S1 ROBOTIS Obstacle Detection Flag When the value of infrared distance sensor becomes larger than the Obstacle Detected Compare Value the AX S1 recognizes existence of an object and sets object detection bit to 1 Refer to the below table for bit representation of each sensor Bit Representation Bit 2 An object is detected on the Right Sensor Light Detected Bit 1 An object is detected on the Center Sensor Light Detected Bit 0 An object is detected on the Left Sensor Light Detected Luminosity Detection Flag When the value of light sensor becomes larger than the light detected compare value the AX S1 recognizes existence of source of il
36. on volatile and will still remain even after the power is turned off The Initial Value column on the right side of the control table shows the Factory Default Values for the case of EEPROM area data and shows the initial value when the power is turned on for the case of RAM area data The following explains the meaning of data stored in each of the addresses in the control table Model Number For AX S1 the value is 0 0000 13 Firmware Version ID The unique ID number assigned to each Dynamixel actuators for identifying them Different IDs are required for each Dynamixel actuators that are on the same network Baud Rate Determines the communication speed The computation is done by the following formula Speed BPS 2000000 Address4 1 Data Value for each Major Baud Rate 1192000 571429 5676000 0 7947 19230 8 192000 0 160 207 96154 9600 0 0 160 maximum Baud Rate error 3 is within the tolerance UART communication 9g 8 16 94 103 200000 0 200000 0 0 000 117647 1 2 1249 14 DYNAMIXEL Address 0x05 Address Address 0x0C 0x0D Address 0X10 Address 0x14 AX S1 ROBOTIS Return Delay Time The time it takes for the Status Packet to return after the Instruction Packet is sent The delay time is given by 2uSec Address5 value the Highest Limit Temperature The upper limit of the Dynamixel ac
37. ontinue RxD8 gbpParameter 0 P LED Address of LED gbpParameter 1 0 Writing Data bTxPacketLength TxPacket bID INST WRITE 2 bRxPacketLength RxPacketDEFAULT RETURN PACKET SIZE TxDString r n TxD PrintBuffer gbpTxBuffer bTxPacketLength TxDString r n RxD PrintBuffer gbpRxBuffer oRxPacketLength TxDString r n n Example 5 Read Control Table Any Key to Continue RxD8 gbpParameter 0 0 Reading Address gbpParameter 1 49 Read Length bTxPacketLength TxPacket bID INST 2 bRxPacketLength RxPacket DEFAULT RETURN PACKET SIZE gbpP 1 TxDString r n TxD PrintBuffer gbpTxBuffer bTxPacketLength TxDString r n RxD PrintBuffer gbpRxBuffer oRxPacketLength if oRxPacketLength DEFAULT_RETURN_PACKET_SIZE gbpParameter 1 TxDString r n for bCount 0 bCount lt 49 bCount TxD8 TxD8Hex bCount TxDString TxD8Hex gbpRxBuffer bCount 5 TxD8 7 TxDString r n n Example 6 Go 0x200 with Speed 0x100 Any Key to Continue RxD8 gbpParameter 0 P_GOAL_POSITION_L Address of Firmware Version gbpParameter 1 0x00 Writing Data P GOAL POSITION 1 gbpParameter 2 0x02 Writing Data P GOAL POSITION gbpParameter 3 0x00 Writing Data P GOAL SPEED gbpParameter 4 0x01 Writing Data P GOAL SPEED H bTxPacketLength TxPacket bID INST WRITE 5 bRxPacketLength RxPac
38. r under side of the AX 12 body as needed Horn2Body Body2Body Exploded view Assembled DYNAMIXEL ROBOTIS 2 2 Connector Assembly Assemble the connectors as shown below Attach the wires to the terminals using the correct crimping tool If you do not have access to a crimping tool solder the terminals to the wires to ensure that they do not become loose during operation 1 Striping SS Li 5 Assembling 2 Inserting 9 6 Complete DYNAMIXEL 3 ROBOTIS 2 3 Dynamixel Wiring Pin Assignment The connector pin assignments are as the following The two connectors on the Dynamixel are connected pin to pin thus the AX S1 can be operated with only one connector attached PIN GND S ort TM PIN VDD PINS Data oo o gt PIN1 GND VDD oo Data Wiring Connect the AX 2 actuators pin to pin as shown below Many AX S1 andAX 12 actuators can be controlled with a single bus in this manner Control Box CM 5 Main Controller To operate the Dynamixel actuators the main controller must support TTL level half duplex UART A proprietary controller can be used but the use of the Dynamixel controller CM 5 is recommended PC LINK A PC can be used to control the Dynamixel via t Ms ntroller RS232 i Dynam
39. single instruction However you can use this instruction only when the lengths and addresses of the control table to be written to are the same Also the broadcasting ID needs to be used for transmitting ID OXFE Length L 1 N 4 L Data length for each Dynamixel actuator The number of Dynamixel actuators Instruction 0X83 Parameter1 Starting address of the location where the data is to be written Parameter2 The length of the data to be written L Parameter3 The ID of the 1st Dynamixel actuator Parameter4 The 1st data for the 1st Dynamixel actuator Parameter5 The 2nd data for the 1st Dynamixel actuator Data for the 1st Dynamixel actuator Parameter L 3 The Lth data for the 1st Dynamixel actuator Parameter L 4 The ID of the 2nd Dynamixel actuator Parameter L 5 The 1st data for the 2nd Dynamixel actuator Parameter 1 6 The 2nd data for the 2nd Dynamixel actuator Data for the 2nd Dynamixel actuator Parameter 2144 The Lth data for the 2nd Dynamixel actuator 28 DYNAMIXEL 3 ROBOTIS Example 5 Setting the following positions and velocities for 4 Dynamixel actuators Dynamixel actuator with ID of 0 to position 0X010 with a speed of 0X150 Dynamixel actuator with an ID of 1 to position 0X220 with a speed of 0X360 Dynamixel actuator with ID of 2 to position 0X030 with a speed of 0X170 Dynamixel actuator with an ID of 0 to position 0X220 with a speed of 0X380 Instruction Packet OXFF OXFF OXFE 0X18 0X83 OX1E 0X04
40. t sensor value Instruction READ_DATA Address 0x1E DATA 0x01 gt Dynamixel FF FF 64 04 02 1E 01 76 LEN 008 lt Dynamixel FF FF 64 03 00 00 98 LEN 007 NO ERROR The center light sensor value is 0x00 Dynamixel AX S1 that has ID 100 reads the sound loudness Instruction READ_DATA Address 0x23 DATA 0x01 gt Dynamixel FF FF 64 04 02 23 01 71 LEN 08 lt Dynamixel FF FF 64 03 00 7E 1A LEN 007 NO ERROR The sound loudness value is 0x7E 126 Dynamixel AX S1 that has ID 100 reads the numbers of sound detect frequency Instruction READ_DATA Address 0x25 DATA 0x01 gt Dynamixel FF FF 64 04 02 25 01 6F LEN 008 lt Dynamixel FF FF 64 03 00 02 96 LEN 007 NO ERROR The number of sound detect frequency is 2 Dynamixel AX S1 that has ID 100 playbacks special melody 5 times through buzzer After writing OxFF 255 on buzzer sound interval it writes No 5 on buzzer note melody ID 100 Instruction WRITE DATA Address 0x29 DATA OxFF 33 DYNAMIXEL 3 ROBOTIS ID 100 Instruction WRITE DATA Address 0x28 DATA 0x05 Communication gt Dynamixel FF FF 64 04 03 29 FF 6C LEN 008 lt Dynamixel FF FF 64 02 00 99 LEN 006 gt Dynamixel FF FF 64 04 03 28 05 67 LEN 008 lt Dynamixel FF FF 64 02 00 99 LEN 006 Status Packet Result NO ERROR Case 2 Writes buzzer note and buzzer sound interval simultaneously Instruction Packet ID 100 Instruction WRITE DATA Addr
41. truction byte bParameterLength byte RxPacket byte bRxLength id PrintBuffer byte bpPrintBuffer byte bLength Gloval Variable Number vo byte gbpParameter 1 28 byte gbRxBufferReadPointer byte gbpRxBuffer 128 byte gbpTxBuffer 128 int main void atile byte gbpRxInterruptBuffer 256 atile byte goRxBufferWritePointer byte bCount bID bTxPacketLength bRxPacketLength Portlnitialize Port In Out Direction Definition RS485_RXD Set RS485 Direction to Input State Seriallnitialize SERIAL_PORTO 1 RX_INTERRUPT RS485 Initializing RxInterrupt Seriallnitialize SERIAL PORT1 DEFAULT BAUD RATE 0 RS232 38 DYNAMIXEL Initializing None Interrupt gbRxBufferReadPointer gbRxBufferWritePointer 0 RS485 RxBuffer Clearing Enable Interrupt Compiler Function TxDString n The Example of Dynamixel Evaluation with ATmega128 GCC AVR Dynamixel Communication Function Execution Step Step 1 Parameter Setting gbpParameter In case of no parameter instruction Ex INST_PING this step is not needed Step 2 TxPacket ID INSTRUCTION LengthOfParameter Total TxPacket Length is returned Step 3 RxPacket ExpectedReturnPacketLength Real RxPacket Length is returned Step 4 PrintBuffer BufferStartPointer LengthForPrinting 1 TxDString nn Example 1 Scanning Dynamixels 0 9 Any Key to Continue RxD8 for b
42. tuator s operating temperature If the internal temperature of the Dynamixel actuator gets higher than this value the Over Heating Error Bit Bit 2 of the Status Packet will return the value 1 and an alarm will be set by Address 17 18 The values are in Degrees Celsius the Lowest Highest Limit Voltage The upper and lower limits of the Dynamixel actuator s operating voltage If the present voltage Address 42 is out of the specified range a Voltage Range Error Bit Bit O of the Status Packet will return the value 1 and an alarm will be set by Address 17 18 The values are 10 times the actual voltage value For example if the Address 12 value is 80 then the lower voltage limit is set to 8V Status Return Level Determines whether the Dynamixel actuator will return a Status Packet after receiving an Instruction Packet Address16 Returning the Status Packet NE QNI Do not respond to any instructions Respond only to READ DATA instructions Respond to all instructions In the case of an instruction which uses the Broadcast ID OXFE the Status Packet will not be returned regardless of the Address 0 10 value Obstacle Detected Compare Value Dynamixel Sensor Module sets the standard value for the object detection that is in the direct line of object sensor parameter If the infrared sensor value is greater than a standard value as it indicates an obstacle within the set distance the bit is set to a value of 1 in correspondin
43. ultaneous 19 DYNAMIXEL 3 ROBOTIS Address 0x28 however for the placement that has been set in side angle the time differences will be influenced by the distances of AX S1s With this concept it can estimate the direction of the sound Below are detailed illustrations BA Sound source BA Sound source Time difference as much as distance 1 Sound from angle 2 Sound from front It counts completely every 4 096msec and it recounts again from 0 Therefore in calculating the sound of speed for every count sound moves 0 02mm and two AX S1 s distance must be within 70cm For example when two AX S1s is 10cm apart by using above method estimation two AX S1s sound detected time difference can be maximum of 5 000 If it is 5 000 it signifies that sound source is completely from the 90 angle or from the right side Buzzer Index All AX S1 has built in buzzer and thus can playback the simple notes Buzzer can play up to 52 notes and as it has whole and semitone in each octave it can playback various melody sounds The buzzer index value is assigned as follows Melody Buzzer Melody Buzzer Buzzer Melody notes index notes index index notes 39 do 40 do 41 42 43 44 fa 45 fas 46 sol 47 Sols fast 22 sol 35 sols 48 la 20 DYNAMIXEL 10 AX S1 ROBOTIS sol Address 0x29 Address 0x2A Address 0x2B Address 0x2C Address 0x2E l
44. ved 1 1 20 0X14 Obstacle Detected Compare 1 0 2550080 21 0X15 _ Light Detected Compare 1 255 xff 36 0X24 Sound Data MaxHold 1 2550080 370425 Sound Detected Count 1 O 2550080 38 0X26 Sound Detected Time 2 0 65535l0xffff 40 0 28 Buzerindex 1 2550xff 410 29 Buzzer Time 1 2550 AMOX2C Registered Instruction 1 0 1 anox2F Lock 1 1 1 5 10 32 _IR Remocon TX Data 2 0 65535 0 Control Table Data Range and Length for Writing 23 DYNAMIXEL 3 ROBOTIS Function Length Instruction Parameter1 Parameter2 Parameter3 Parameter N 1 4 Instruction Set and Examples The following Instructions are available No action Used for obtaining a Status Packet Reading values in the Control Table Writing values to the Control Table Triggers the action registered by the ROTION REG WRITE instruction 0x03 Changes the control table values of the RESET Dynamixel actuator to the Factory Default Value 0x06 settings SYNC WRITE Used for controlling many Dynamixel actuators 0x83 at the same time 4 1 WRITE_DATA Similar to WRITE_DATA but stays in standby REGATE mode until the ACION instruction is given To write data into the control table of the Dynamixel actuator N 3 N is the number of data to be written 0X03 Starting address of the location wh
45. vice are connected to the same bus all the other devices need to be in input mode while one device is transmitting The Main Controller that controllers the Dynamixel actuators sets the communication direction to input mode and only when it is transmitting an Instruction Packet it changes the direction to output mode RS485 Direction Output Duration Instruction Packet Status Packet Return Delay Time The time it takes for the Dynamixel actuator to return the Status Packet after receiving an Instruction Packet The Default Value is 160 uSec and can be changed via the Control Table at Address 5 The Main Controller needs to change the Direction Port to input mode during the Return Delay Time after sending an instruction packet For Half Duplex UART the transmission ending timing is important to change the direction to receiving mode The bit definitions within the register that indicates UART_STATUS are as the following TXD_BUFFER_READY_BIT Indicates that the transmission DATA can be loaded into the Buffer Note that this only means that the SERIAL TX BUFFER is empty and does not necessarily mean that the all the data transmitted before has left the CPU TXD_SHIFT_REGISTER_EMPTY_BIT Set when all the Transmission Data has completed its transmission and left the CPU The TXD_BUFFER_READY_BIT is used when one byte is to be transmitted via the serial communication channel and an example is shown below TxDByte byte bData
46. ys to detect an object at a long distance It is impossible to detect an object in a short distance around 5cm since it always has maximum value in short distance To prevent this AX S1 support low sensitive mode to detect precise value in a short distance If the Obstacle Detected Compare Value is 0 it converts to low sensitive mode The low sensitive mode has very weak long distance sensing capability but it is possible to detect precise and sensitive short distance detection not to saturate maximum value Light Detected Compare Value Control Table RAM Range where light detected compare value of Address 0x15 is saved 22 DYNAMIXEL 3 ROBOTIS Range Each data has set value where their valid range is defined Outside of this range their write command will return Error Below table indicates the length for writing and its range 16 bit data is indicated L and H and as 2 byte This 2 byte must be written as one in instruction packet 2 Address bytes 0 ars A tie Return Delay Time 1 0 26 0 1110 0 the Highest Limit Temperature 1 0 1500 96 1210 0 the Lowest Limit Voltage 1 500 32 250 0 13 0X0D the Highest Limit Voltage 1 50 0 32 26010 16 0 10 _Status Return Levei 1 2 170 11 1 1270X7f 180412 AlarmShutdown 1 0 1270 76 190X131 Reser

Download Pdf Manuals

image

Related Search

Related Contents

BEDIENUNGSANLEITUNG  Samsung GT-E1130 คู่มือการใช้งาน  ACA-356N  Elite EIND-88P Use and Care Manual  AWOS System Description  CG-100 User Manual  StarTech.com Component Wall Plate Video Extender over Cat 5 with Digital Audio  O texto da página 2 se refere a um manual de instruções que  Beitrag der Sprachtechnologie zur Barrierefreiheit - trans-kom  

Copyright © All rights reserved.
Failed to retrieve file