Air Muscles: Make an Artificial Muscle Robot Controller
Intro: 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.
25 Comments
samuraifalcon14 1 year ago
VardaanB 7 years ago
I was wondering how exactly this works; I thought a vacuum pump would suck air out of the muscles, not pump air into them...
mikey77 7 years ago
This robot uses positive pressure to inflate and negative pressure to return to a rest state.
hope that helps.
Hobbie Expert 9 years ago
cinosencio24 9 years ago
I need help!!!! I am 11 years old and really want to build this for a robot I would like to build. But I haven't seen any of this kind of stuff before. Can you comment back and try to help me by making it simpler?
mikey77 9 years ago
This is university level robotics, or beyond. Not a good starting point for a beginner.
If you are serious about learning how to build robots you can start by:
1-learn how to program a single micro-controllers like a Picaxe or Arduino to control servos or gearmotors.
2-Once you can build a single micro-controller robot, you can look into programming more than one micro-controller inter-connected as a single controller.
There is an abundance of information on how to do this on Instructables and the internet..
If you are serious you will have the patience and take the time required to learn what you do not know.
Best wishes,
mikey77
cinosencio24 9 years ago
Does it cost a lot of money, how do you make the tinkertrons, and is there any way that one controller could control 2 arms?
Hobbie Expert 9 years ago
i cant find the couplings You used a y other "pack" i could use
smartaleck135 11 years ago
bfk 11 years ago
rocketman20 11 years ago
mikey77 11 years ago
dantistus 11 years ago
mikey77 11 years ago
What about a water tower to act as a compressor and provide the pressure for the air muscles?
A solar panel could heat up some water and steam it to the top of the water tower where it could condense. This would maintain the height of the water in the tower.
A really clean, water and solar powered robot.
Edgar 11 years ago
I keep thinking on Fabricating uses for this, and even Garage Machine-tools for home-made micro assembly lines!
A note about this is on my Blog:
http://faz-voce-mesmo.blogspot.pt/2012/08/lagostas-mecanicas-multimaquina-e-o.html
Edgar 11 years ago
sitearm 11 years ago
Hugh Jorgan 11 years ago
Honus 11 years ago
neivadan 11 years ago