Download presentation
Presentation is loading. Please wait.
Published byCalvin Stewart Modified over 7 years ago
1
Bobby Lunceford Connor Phyfer Luke Rice Phillip Bennett
SSTEM Robotics – Fall 2010
2
What is Bioloid? A hobbyist robot kit produced by Korean manufacturer Robotis. Used by Navel Academy in its mechanical engineering program Allows you to create many unique robots using a small number of different parts Robots can accomplish a number of different tasks because of the built in sensor and processor
3
Examples of robots
4
The King Spider Different from other robots previously built
Stable while walking Looks cool!
5
Building the King Spider
18x Dynamixels 1x Sensor 1x CM -5
6
Finite State Machine *All states can go to Error.
7
Conditions Condition Code Obstacle in front? F Ground below? B
Clearance above? A Load on right front leg? RF Load on left front leg? LF Load on right rear leg? RR Load on left rear leg? LR Last position successful? LPS
8
Condition Codes 011111111 255 1 2 3 4 5 6 7 8 n/a Front Below Above
1 2 3 4 5 6 7 8 n/a Front Below Above Right Front Left Front Right Rear Left Rear Last Position Successful F B A RF LF RR LR LPS 255
9
Atmega128 8 Bit Microcontroller AVR Family Memory I/O
10
Microcontroller What makes a microcontroller?
A microcontroller (sometimes abbreviated µC, uC or MCU) is a small computer on a single integrated circuit containing a processor core, memory, and programmable input/output peripherals. Why use a microcontroller? Cost Power consumption Flexibility
11
AVR Family AVR Doesn’t stand for anything in particular
Modified Harvard Architecture Instruction memory and Data memory are separate Instructions and data occupy different address spaces, so a single address could point to data or an instruction Popular due to reasonably priced development kits and free software tools. BIOLOID Can be programmed using GNU toolset and free WinAVR compiler
12
Memory In System Reprogrammable Flash Memory EEPROM SRAM
128 K (64Kx16) Stores program EEPROM 4K Expensive Non-volatile SRAM Volatile Doesn’t need to be refreshed. Addressed with register file and IO registers Stack is allocated in SRAM
13
I/O Universal Asynchronous Receiver Transmitter UART0: Dynamixels
Communicates between Parallel and Serial devices. UART0: Dynamixels UART1: RS232 Serial to PC Zigbee 100 Wireless
14
Zigbee 2.4ghz Wireless Serial replacement Max bandwidth: 250kbps
Uses UART1, PortD on MCU Transmits as 8 bit character Zigbee enabled when RS232 PC interface is unplugged Programmed basic handshake functions for master/slave operation.
15
LibAVR and Libbioloid LibAVR LibBioloid
General purpose C code for AVR MCU Example: Defines all I/O registers in SRAM with #defines for easy access. LibBioloid Bioloid Specific C Libraries Dynamixel.c: General helper functions for reading data from and writing data to dynamixels. Includes changing position, checking temp. and load.
16
Code Sample
17
Things Learned and Future Plans
Low level C programming Volatile keyword, inline assembly, macros, #defines MCU operations Low level Bioloid operations Future Plans: Implement more wireless helper functions, like transmission of floating point and larger than 8 bit integers Refine knowledge of libraries and use knowledge to create a complex project.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.