Introduction: Air Muscles: Make an Artificial Muscle Robot Controller
Here are two ways to make a controller that can control artificial air muscles. The intro pic shows the more elaborate version that can control up to 11 air muscles using robot neurons. It is shown activating an air muscle robot gripper that is being developed.
Also explained in this instructable, is a more basic version that can control 5 air muscles with a more conventional circuit.
The air muscle controller can be controlled by infrared LEDs using a standard universal remote. In this way, individual muscles or sequences of muscles can be activated.
These air muscles are cast using layers of thin sheets of plastic and wood as molds. A laser cutter would greatly speed up the process and accuracy of creating Oogoo air muscle molds.
Pic 2 shows the finished arm and gripper which is explained in a separate instructable: https://www.instructables.com/id/Soft-Robots-Make-An-Artificial-Muscle-Arm-And-Gri/
Also explained in this instructable, is a more basic version that can control 5 air muscles with a more conventional circuit.
The air muscle controller can be controlled by infrared LEDs using a standard universal remote. In this way, individual muscles or sequences of muscles can be activated.
These air muscles are cast using layers of thin sheets of plastic and wood as molds. A laser cutter would greatly speed up the process and accuracy of creating Oogoo air muscle molds.
Pic 2 shows the finished arm and gripper which is explained in a separate instructable: https://www.instructables.com/id/Soft-Robots-Make-An-Artificial-Muscle-Arm-And-Gri/
Step 1: How It Works
Although it looks a little bit Rube Goldberg, The 11 channel air muscle controller is fairly simple in concept. A Picaxe microcontroller (master Neuron) is controlled by an infrared remote control. The master neuron then sends signals to two activator neurons which control 14 solenoid air valves. The master neuron also controls a motor controller which controls the speed of a motor driven pressure/vacuum pump.
Up to 11 separate air muscles can be activated and a tethered robot thus controlled. Pressure, exhaust, or vacuum can be connected to one or more muscles at a time. This is a low pressure system that operates at about 5 to 9 PSI. This is mainly because the $3 solenoids can only hold a maximum of about 11 PSI.
The air muscles are made of Oogoo, an inexpensive silicone caulk mixture that can be cast or molded into endless flexible objects.
Up to 11 separate air muscles can be activated and a tethered robot thus controlled. Pressure, exhaust, or vacuum can be connected to one or more muscles at a time. This is a low pressure system that operates at about 5 to 9 PSI. This is mainly because the $3 solenoids can only hold a maximum of about 11 PSI.
The air muscles are made of Oogoo, an inexpensive silicone caulk mixture that can be cast or molded into endless flexible objects.
Step 2: Materials
12 volt solenoid air valves from: http://www.allelectronics.com/make-a-store/item/SOL-132/SOLENOID-VALVE/1.html
Raintree drip irrigation fittings (couplers, Tees, elbows, stop valves) for 3/16" tubing available from Amazon: http://www.amazon.com/
20' Silicone aquarium airline tubing available from: http://www.amazon.com/Deluxe-Silicone-Flexible-Airline-Aquariums/dp/B0002AQ0TS/ref=pd_sbs_k_6/185-5423674-4412437
12 volt air pressure/vacuum pump from: http://www.sparkfun.com/search/results?term=vacuum+pump&what=products
Picaxe microcontrollers (18x, 20m2) available from Phanderson: http://www.phanderson.com/picaxe/index.html#mlx90614
Resistors capacitors, and other electronic parts from Mouser: http://www.mouser.com/
SOLDER-ABLE PERF BOARD, LINE PATTERN from Allelectronics: http://www.allelectronics.com/make-a-store/item/ECS-4/SOLDERABLE-PERF-BOARD-LINEPATTERN/1.html
1/16" thick plastic sheet. I used phenolic sheet that I had, but polycarbonate, acrylic or any other plastic sheet material could be used.
2 gallon polycarbonate water jug from Wal-Mart. The top is cut off on the spigot removed. The whole thing is turned upside down to create a mounting platform for the valves and electronics.
Raintree drip irrigation fittings (couplers, Tees, elbows, stop valves) for 3/16" tubing available from Amazon: http://www.amazon.com/
20' Silicone aquarium airline tubing available from: http://www.amazon.com/Deluxe-Silicone-Flexible-Airline-Aquariums/dp/B0002AQ0TS/ref=pd_sbs_k_6/185-5423674-4412437
12 volt air pressure/vacuum pump from: http://www.sparkfun.com/search/results?term=vacuum+pump&what=products
Picaxe microcontrollers (18x, 20m2) available from Phanderson: http://www.phanderson.com/picaxe/index.html#mlx90614
Resistors capacitors, and other electronic parts from Mouser: http://www.mouser.com/
SOLDER-ABLE PERF BOARD, LINE PATTERN from Allelectronics: http://www.allelectronics.com/make-a-store/item/ECS-4/SOLDERABLE-PERF-BOARD-LINEPATTERN/1.html
1/16" thick plastic sheet. I used phenolic sheet that I had, but polycarbonate, acrylic or any other plastic sheet material could be used.
2 gallon polycarbonate water jug from Wal-Mart. The top is cut off on the spigot removed. The whole thing is turned upside down to create a mounting platform for the valves and electronics.
Step 3: Robot Neuron Controller
I am using this controller to test the robot neural network that I am working on. For details on the Picaxe code and schematics used to make the neurons, see here: https://www.instructables.com/id/Tinkertrons-Make-Artificial-Neurons-For-Robots/
Step 4: Small Air Muscle Controller
Here is a smaller version that I originally made to test air muscles that is a more conventional circuit. It is controlled by an infrared LED universal remote control that is set to output Sony TV code.
Click on the Schematic to see a larger version.
Here is the programming code for a Picaxe 20x-2 that can control up to 7 valves and a variable speed air pump:
'air7 muscle controller-2 air muscles
input b.5
low c.1
low c.2
low c.3
low c.4
low c.5
low b.7
low c.7
serout c.0,t2400,(170,9,$0C,84) 'clock m1 24-127 2/3 speed
pause 100
loopinfra: 'remote control of motions or activate autonomous sequences
'debug b6
irin b.5, b6
if b6 = 0 then act1 'remote button 1 =0
if b6 = 1 then act2 'b2
if b6 = 2 then act3 'b3
if b6 = 3 then act4 'b4
if b6 = 4 then act5 'b5
if b6 = 5 then act6 'b6
if b6 = 6 then act7 'b7
if b6 = 7 then act8 'b8
if b6 = 8 then act9 'b9
' if b6 = 11 then act10 '
' if b6 = 21 then act11 '
if b6 = 21 then off1 'off 1-7
' if b6 = 21 then act11 '
goto loopinfra
act1: 'left muscle on
high c.1
high c.3
pause 10
low c.1
low c.3
pause 80
goto loopinfra
act2: 'right muscle on
high c.1
high c.4
pause 100
low c.1
low c.4
pause 100
goto loopinfra
act3:
high c.3
pause 1000
goto loopinfra
act4:
high c.4
pause 1000
goto loopinfra
act5:
high c.5
pause 1000
goto loopinfra
act6:
high b.7
pause 1000
goto loopinfra
act7:
high c.7
pause 1000
goto loopinfra
act8:
high c.1
pause 1000
goto loopinfra
act9:
act10:
off1:
high c.3
high c.4
high c.2
pause 6000
low c.2
low c.3
low c.4
goto loopinfra
'extra
'serout 3,t2400,(170,9,$0E,127) 'c-clock m1 24-127
'serout 3,t2400,(170,9,$0E,0) speed 0 to stop
'serout 3,t2400,(170,9,$06) 'coast m0 to stop
'serout 3,t2400,(170,9,$07) 'coast m1 to stop
'serout 3,t2400,(170,9,$08,127) 'clock m0 24-127
'serout 3,t2400,(170,9,$0A,127) 'c-clock m0 24-127
'serout c.0,t2400,(170,9,$0C,84) 'clock m1 24-127 2/3 speed
'pause 100
'serout 3,t2400,(170,9,$8C,127) 'clock m1 speed 24-127(half speed)
'serout 3,t2400,(170,9,$8D,127) 'clock m1 full speed
'serout 3,t2400,($8c,24) 'clock m1 24-127 full speed
'serout 3,t2400,(13,127) 'c-clock m1 24-127 full speed
Click on the Schematic to see a larger version.
Here is the programming code for a Picaxe 20x-2 that can control up to 7 valves and a variable speed air pump:
'air7 muscle controller-2 air muscles
input b.5
low c.1
low c.2
low c.3
low c.4
low c.5
low b.7
low c.7
serout c.0,t2400,(170,9,$0C,84) 'clock m1 24-127 2/3 speed
pause 100
loopinfra: 'remote control of motions or activate autonomous sequences
'debug b6
irin b.5, b6
if b6 = 0 then act1 'remote button 1 =0
if b6 = 1 then act2 'b2
if b6 = 2 then act3 'b3
if b6 = 3 then act4 'b4
if b6 = 4 then act5 'b5
if b6 = 5 then act6 'b6
if b6 = 6 then act7 'b7
if b6 = 7 then act8 'b8
if b6 = 8 then act9 'b9
' if b6 = 11 then act10 '
' if b6 = 21 then act11 '
if b6 = 21 then off1 'off 1-7
' if b6 = 21 then act11 '
goto loopinfra
act1: 'left muscle on
high c.1
high c.3
pause 10
low c.1
low c.3
pause 80
goto loopinfra
act2: 'right muscle on
high c.1
high c.4
pause 100
low c.1
low c.4
pause 100
goto loopinfra
act3:
high c.3
pause 1000
goto loopinfra
act4:
high c.4
pause 1000
goto loopinfra
act5:
high c.5
pause 1000
goto loopinfra
act6:
high b.7
pause 1000
goto loopinfra
act7:
high c.7
pause 1000
goto loopinfra
act8:
high c.1
pause 1000
goto loopinfra
act9:
act10:
off1:
high c.3
high c.4
high c.2
pause 6000
low c.2
low c.3
low c.4
goto loopinfra
'extra
'serout 3,t2400,(170,9,$0E,127) 'c-clock m1 24-127
'serout 3,t2400,(170,9,$0E,0) speed 0 to stop
'serout 3,t2400,(170,9,$06) 'coast m0 to stop
'serout 3,t2400,(170,9,$07) 'coast m1 to stop
'serout 3,t2400,(170,9,$08,127) 'clock m0 24-127
'serout 3,t2400,(170,9,$0A,127) 'c-clock m0 24-127
'serout c.0,t2400,(170,9,$0C,84) 'clock m1 24-127 2/3 speed
'pause 100
'serout 3,t2400,(170,9,$8C,127) 'clock m1 speed 24-127(half speed)
'serout 3,t2400,(170,9,$8D,127) 'clock m1 full speed
'serout 3,t2400,($8c,24) 'clock m1 24-127 full speed
'serout 3,t2400,(13,127) 'c-clock m1 24-127 full speed
Step 5: Artificial Air Muscle Robot Gripper
Here are pics showing the air muscle gripper open and closed. I still have to add more muscles to it, for it to be fully functional.
It will be attached to a robot arm that I am working on and when it is done, I will post a separate instructable on how to make the arm and gripper.
For details on how Oogoo air muscles can be made, see here: https://www.instructables.com/id/Soft-Robots-Making-Robot-Air-Muscles/
It will be attached to a robot arm that I am working on and when it is done, I will post a separate instructable on how to make the arm and gripper.
For details on how Oogoo air muscles can be made, see here: https://www.instructables.com/id/Soft-Robots-Making-Robot-Air-Muscles/
Step 6: Other Possibilities
On-board Valves
I am working on making smaller valves and an Oogoo air pump that can be embedded in the air muscles. This will eventually allow for untethered soft robots
Soft Robots
I believe that the future of practical robotics is in soft robots. They can be made in an easier and less expensive manner than conventional hard bodied robots. They can also produce a more natural motion and are more people friendly.
Robot Arm
The step 6 pic shows a robot arm that is under development.
I am working on making smaller valves and an Oogoo air pump that can be embedded in the air muscles. This will eventually allow for untethered soft robots
Soft Robots
I believe that the future of practical robotics is in soft robots. They can be made in an easier and less expensive manner than conventional hard bodied robots. They can also produce a more natural motion and are more people friendly.
Robot Arm
The step 6 pic shows a robot arm that is under development.