Asked
— Edited
I am thinking about adding analog capacitive wires for my InMoov but have a questions. All of my V4's are in use on the inmoov right now so I dont have one to try this with or I would.
In order for the analog signal to increase or decrease when a wire is touched, I assume that I have to provide current (+ and/or -) to the pad that I will be incorporating along with the signal wire. Is this an accurate statement or do I just need the signal wire?
Thanks David
conductive paint works well right now. I dont know if it will break down over time or not, but...
I get normal analog readings of between .82 volts and.87 volts when not When I touch the palm of the hand softly, I get analog readings of 1.3 V to 1.5V
When I put pressure on the palm with the rubber handle of a screw driver, I get analog readings from .42 volts to .51 volts.
I also roughed up the paint by patting it with sandpaper when it was tacky still. This gives some texture to the palm of the hand.
Hi, here's a link to the post I made about the touch sensors I experimented with.
https://synthiam.com/Community/Questions/7724
Strange thing happened though, they quit working. Everything was set up and the next day when I fired up the robot nothing. I haven't able to figure it out.
Anyway, I am going to try what you have done Dave, looks a lot more sophisticated than my effort.
I did also try touch sensor base on Bob experimentation.
A thin 5 feet HDMI wire directly connected to an A/D port touched by myself will trigger the "your are touching my finger" sentence.
Here a quick script based on what BOB did before.
:loop #Get ADC value $TS0 = GetADC(ADC5)#finger
SetVolume( 200) if($TS0 >75 ) #sleep(500) SayEZBwait("You are touching my finger") endif Goto (loop)
I intend to wrap a small metal foil ring around the tip of each finger, maybe connect tree fingers together and keep the thumb and index separate. An other one in the palm of the hand.
So 8 a/d port of one EZB would be enough to cover the 2 hands.
By the way what is the easiest way to increase the amount on A/D port of a EZB ?
currently there is only one option that I know of. You could put in an arduino mini pro and then send the results of the analog ports on the arduino to the v4 via a serial connection. Any digital port can be used or the serial port on the v4 to get the data, but you are probably out or close to out of digital ports. You might need to use the new ability of ARC to add more digital ports to free up one of the digital ports to use this solution.
Another option is to add another V4 also.
Tanks for the sugestions David, Indeed I will need to add at least an other EZB, but still I'll be short of input port. So I'll explore the other options.
Here is the end result photo. I wanted to give my robot the ability to sense touch in the hands. I accomplish this by using analog ports on the V4 and connect it to the hand using the HDMI cable that runs from the shoulder to the wrist. There is an HDMI splitter in both locations. The HDMI cable also carries the signal to the servo motors in the hands that move the rotational writs and fingers. I cut the foam from an EZ-Robot box to fit the palm of the hand and the fingers. This foam provides extra grip for the hands. I placed the analog signal wire on the outside of these pads and then painted over the wire with some conductive black paint. When the pads are touched by something conductive like a human, the analog readings increase. I also wanted to add a pressure sensor for the palm of the hand. This was done by adding a ground wire to the palm pad that is inserted into the pad just below the surface of the pad. Now when a non-conductive object, such as a screw driver is pressed into the palm the analog reading decreases. This allows me to know if it is a person or an object that is contacting the palm. It also allows me to program the inmoov to grip an object tight enough so as not to drop it.