Useful robot algorithms in both pseudocode and source code. Because programming
is a very huge subject and there are billions of books and tutorials on how to program
already written, all I plan to cover is specifically what is important to programming
robots not mentioned in common literature.
A bootloader is a program used to upload .hex files to your microcontroller without a hardware programmer.
Learn how to set up a bootloader for any AVR microcontroller.
This will also work for the $50 Robot.
A four part tutorial series that covers vision in biology, image processing, and most vision algorithms.
How to use a microcontroller and Hyperterminal for data logging, algorithm debugging, and sensor testing.
Learn about the most basic of robot control drive structures.
Learn how to implement fuzzy logic into your robots.
Basic robot line following algorithms.
Learn how to do timing on microcontrollers without using a hardware timer.
Implement PID control feedback into your robot feedback control.
Learn how how a robot can chase or avoid light.
Learn more about the C printf() function for microcontrollers. Good reference sheet for printf().
Learn how and why to simulate your robots.
Sample code for setting up and programming timers for microcontrollers.
Required if you need real-time trigonometry calculations but have a slow processor (such as for omni-wheel robots).
Learn how you can use a microcontroller to transmit useful data by USB, serial, and wireless using the UART.
An addition to the UART tutorial, giving you practical step-by-step instructions on
how to add UART functionality for any AVR based robot – including your $50 Robot.
Learn tricks about programming variables in C. Good reference chart for variable types.
One of the more basic algorithms for robot pathfinding. Includes additional adaptive mapping features.
The best AVR Library you’ll ever see. Completely and fully documented, large community of users, great support, and entirely free.
It has drivers for almost all common robotics hardware/sensors on the market,
and is fully compatible with the Axon microcontrollers.
PWM – an Overview – introduction to coding PWM (and code for AVRs)
C Code Optimization – learn advanced code optimization techniques
I2C, a 101 – learn how to use I2C