The arduino microcontroller was used for this class for running a few experiments as well as acting as the controller for the 3-leg parallel robot assembled by the students. The software needed to connect to the arduino is available online at https://www.arduino.cc/ All students needed to download that software to run on their laptops at each lab station.

There are a number of different files used for both teaching the idea of using microcontrollers to the students as well as for running the parallel robot constructed in this class. 

Most of the basic code used in instruction is based off of examples included with the arduino software - found under the examples toolbar. These files (blink, digitalreadserial, analogreadserial) are referenced in the arduino lecture notes as well as the course plan.

The rest of the files are included in the zipped folder below.

The first set of files are used for instruction/testing:

  • VarBlink is an example to what students should be able to create during their introductory tutorials following the lecture notes.
  • SingleServoControl allows for control of a single servo using a potentiometer. The wiring for this can be found on the wiring diagram page.
  • TestJoystick allows for testing of the analog joysticks to make sure they have been plugged in correctly and soldered properly.

All the files starting with RRR_ are for controlling and calibrating the robot. Some of these are referenced in the robot construction guide as well with more detailed instructions for their use.

  • RRR_microsecond_calibrate_pot is used to set the limits of the servos so that they can achieve maximum motion and have their zero and 180 degree limits set properly
  • RRR_servo_control_pot is used to set the 90 degree position of the servos
  • RRR_parallel_robot_go_to_home tells the robot to go to its home position
  • RRR_circle_path makes the robot go in a circle
  • RRR_epicycloid_path is similar to RRR_circle_path but makes a fancier epicycloidal path instead of a simple circle
  • RRR_parallel_robot_roll_origin makes the robot spin from 30 degrees to negative 30 degrees while staying centered at the origin
  • RRR_roll_about_origin_pot_control is similar to RRR_parallel_robot_roll_origin but lets the position of a pot move the robot instead of it moving on a timer
  • RRR_Telemanipulation allows for control of the robot in the x-y plane by using the joystick. No rotation takes place.

See the wiring diagram page for details on how to hook up the arduino for these various different test codes.

Download files