new biped,

iam getting closer do being finsh with my biped, does lynxmotion still cut parts? iam useing a problem called Graphite, to design and it print in real size, then i glue it down on sheet lexan. the i use a scoll saw and sand paper to sharp it.

in this model i want to have to batterys, one as back up and other as main and power station. sensor incoulds a cmucam2

i have a hard time programing, so if anyone could find a battery monitor code, i would be very happy

i want to give a sense of balance to my robot, but still be able to move its body out of level, meaning i heard if you use piezo gyro the servo wont take any commande for the control only the gyro

hello Gundam,

don’t use gyro ! it’s expensive an you only balance ‘relative’ rotation move on one axis / gyro only. try using a 2 axis accelerometer it’s cheaper and you can use it as a sensor more easily than a gyro, and it give you an absolute view of the gravity vector direction.

the best way to use a gyro, is not as a sensor but as an external compensate system…but doing this you loose control from the main processor !..in any case gyro are used to compensate ‘external force action’…but not gravity in fact most of a time it’s used to control a direction ( like an helicopter tail…or a boat/submarine auto pilot )…it compensate very well the air/water movement.
the gyros used on plane’artificial horizon are two axis gyros…(rotating two axis gyros), it’s not like gyros we are talking about, this kind of gyros always give the ground position even if you accelerate in any direction
using a two axis accelerometer it’s enough to know where is the ground and act according to this…you can use it too to detect bumps/shocks, falling, inclination, vibration, sound !, an external push, etc…
the only problem is that you’ll have to handle the histerisis, due to a biped rocking while walking.

but…the only point of a biped which can tell you the balance, is the foot sole…so, the best way to know the robot balance is using 3 or 4 pressure sensor under the foot !

Wow, I’ve never heard of anything other than gyro/accelerometer feedback to maintain balance.
This presure sensor setup sounds like a good idea.
I’ll have to research it further.
Do you know any websites that sell pressure sensors that would work well for this application and are compatible with the SSC-32?

accelerometer is the way to go. iam trying to make smooth movement, so i should have my robot ingoner accelerometer each time the touch the ground so it doent read as a bump or fall?

is this a good model?
parallax.com/detail.asp?product_id=28017

i have 2 switches in each foot
but i was thinking of trying something new like this
parallax.com/detail.asp?product_id=604-00038

How do I know how many g’s I’ll need?
None of the accelerometer’s that I’ve seen have explained how to determine this.
Is there just a standard that everyone but me knows?

for pressure sensor :
conrad.com/ then select international store and type ‘pressure sensor’ in the product search box
but you can find them in an USA e-shop too :wink:
pressure sensor is a variable resistor so, it’s compatible with all harware that can read an analog input.

accelerometer need to be +/- 2g range…but the most important thing is the ‘survival’ property : it must be > 1000g or you will break it very easily.
in any case don’t let it fall down the floor…Oops $30.00 !
the most populars are the ADXL202 and the Memsic 2125.
you’ll need a good programming skill to take advantage of this kind of sensors…it’s easy to read values but very difficult to handle all the ‘noise’ it will feedback during a walk !
it’s sensing all acceleration, gravity, displacement, vibration (so noise too), shock etc…

in fact pressure sensor is the best, with only one under the foot sole front, you can sense if balance is too much to the front or too much to the back
you need another one under the other foot’ sole too or it will not work :laughing:

I have not programmed an accelerometer, but I have seen some example code and it looks to me that you can program to “look” for any one type of motion. In other words, It was my understanding that you can ignore all other feedback such as G’s, height, etc…

Now how it works in a walking machine is still a question to me. If a biped walks, it creates x&y motion and you dont want the accelerometer to fight this normal motion. I guess you have to play with the threshold?

Here is an example of motion detection using the memsic 2125:

[code]
’ =========================================================================

’ File… MEMSIC2125-Motion.BS2
’ Purpose… Detects continuous motion for given period
’ Author… Parallax (based on code by A. Chaturvedi of Memsic)
’ E-mail… [email protected]
’ Started…
’ Updated… 15 JAN 2003

’ {$STAMP BS2}
’ {$PBASIC 2.5}

’ =========================================================================

’ ----- Program Description ]---------------------------------------------

’ Monitors X and Y inputs from Memsic 2125 and will trigger alarm if
’ continuous motion is detected beyond the threshold period.

’ ----- I/O Definitions ]-------------------------------------------------

Xin PIN 8 ’ X pulse input
Yin PIN 9 ’ Y pulse input
ResetLED PIN 10 ’ reset LED
AlarmLED PIN 11 ’ alarm LED

’ ----- Constants ]-------------------------------------------------------

HiPulse CON 1 ’ measure high-going pulse
LoPulse CON 0

SampleDelay CON 500 ’ 0.5 sec
AlarmLevel CON 5 ’ 5 x SampleDelay

XLimit CON 5 ’ x motion max
YLimit CON 5 ’ y motion max

’ ----- Variables ]-------------------------------------------------------

xCal VAR Word ’ x calibration value
yCal VAR Word ’ y calibration value
xMove VAR Word ’ x sample
yMove VAR Word ’ y sample
xDiff VAR Word ’ x axis difference
yDiff VAR Word ’ y axis difference

moTimer VAR Word ’ motion timer

’ ----- Initialization ]--------------------------------------------------

Initialize:
LOW AlarmLED ’ alarm off
moTimer = 0 ’ clear motion timer

Read_Cal_Values:
PULSIN Xin, HiPulse, xCal ’ read calibration values
PULSIN Yin, HiPulse, yCal
xCal = xCal / 10 ’ filter for noise & temp
yCal = yCal / 10

HIGH ResetLED ’ show reset complete
PAUSE 1000
LOW ResetLED

’ ----- Program Code ]----------------------------------------------------

Main:
DO
GOSUB Get_Data ’ read inputs
xDiff = ABS (xMove - xCal) ’ check for motion
yDiff = ABS (yMove - yCal)

IF (xDiff > XLimit) OR (yDiff > YLimit) THEN
  moTimer = moTimer + 1                     ' update motion timer
  IF (moTimer > AlarmLevel) THEN Alarm_On
ELSE
  moTimer = 0                               ' clear motion timer
ENDIF

LOOP
END

’ ----- Subroutines ]-----------------------------------------------------

’ Sample and filter inputs

Get_Data:
PULSIN Xin, HiPulse, xMove ’ take first reading
PULSIN Yin, HiPulse, yMove
xMove = xMove / 10 ’ filter for noise & temp
yMove = yMove / 10
PAUSE SampleDelay
RETURN

’ Blink Alarm LED
’ – will run until BASIC Stamp is reset

Alarm_On:
DO
TOGGLE AlarmLED ’ blink alarm LED
PAUSE 250
LOOP ’ loop until reset[/code]

And here is more information regarding accelerometers:

forums.parallax.com/forums/defau … =6&m=55816

pressure sensors are the way to go i used them on my second biped with great results, I had four per foot and i wired them up so i only had two inputs which made programming much easier

i did use an accelerometer but it was mostly to find vertical

nick

for those of us in the US www.phidgetsusa.com has the .2" sensors i was using

I like your solution, Nick.
I’ve read the tutorials on phidget’s site, but I’m still at a loss.
So, I have a few questions for you:
What resistor did you use?
If I’m using the SSC-32 as a stand-alone device (controlling it wirelessly from my computer), would I use the same resistor?
Can you show me a picture of how you joined the multiple inputs into two inputs?
Thanks.
(^.^)
Please pardon my dumbness.
:smiley:

Yeah, what he said ------^

I would love to see the pictures.

NickR: Forgive me if I’m stating the obvious here and maybe some physics buff will rebuke me for any attempt at differentiation, but accelerometers measure acceleration and gravity too.

Oreintation to gravity is treated as acceleration and the reading you get out of the thing is a combination of those gravitational effects and motion/acceleration perpendicular to gravity. If you hold an accelerometer stationary and tilt one side towards the ground, you can get the same reading as if you held it level (relative to gravity) and continuously accelerated away from the direction you pointed towards the ground.

That’s why they are so useful in bipeds/inverted pendulums and the like.

Maybe you understood this all perfectly well. If so, please excuse my gaffe.

im sorry i dont have pics (its long been disassembled for parts) but ill see if i can find some of my old hook up diagrams and ill post them here. what i did was use the front right and back left sensors wired in series, one side was ground the other a regulated 5v then adc to center this gave me two inputs per foot and the program simply tried to get 2.5v

ssc-32 did not exist back then (wish it did, i had to have the program calculate all that group move stuff) but im unaware of any inputs on the device.

as per the resistor choice (if you go that way) simply use a pot to find the value range you want for the weight of your bot.

sorry if i was unclear
nick

andylippit,

no need to use an accelerometer for inverted pendulums…
the one at balbots.com/ only use 2 Sharp IR Sensors !
no gyro, no accelerometer…and it works fine, see the 2 videos !
but it’s a bit expensive, and i plan to make the same with Lynxmotion’ parts one day.

an accelerometer is very difficult to use on a biped…
and the best way to perfect balance the robot is pressure sensor under feet.
accelerometer are used, for example, to keep horizontal a camera on a pan and tilt system, or to keep something in a certain position to the gravity vector…
…but not really to balance something…why ?..if you want to balance the biped, where to put , accelerometer ?..in the head ?, thorax?, feet ?..there no good place to put it, and in any case it will only able to detect the position relating to the G vector, and not the robot balance…i mean, you can have the thorax incline (or the head) to the front and be perfectly balanced.
…if you put accelerometer on the feet, you will detect ‘a falling’…but…it’s to late uh ? :laughing:
with pressure sensors, you detect the weight distribution on feet…and you are aware in real time if the robot is too much on a side, so you can compensate with wathever you want…arms, thorax etc…you can detect too if an external force is pushing you…and compensate walking in the direction it push you if it’s > to the balancing point.

what are we using… no to fall ?

  • internal ear…that’s human’s gyros and accelerometers !
  • eyes…that’s the camera, searching vertical lines and gravity indicator
  • muscles…that’s the potentiometers feedback in the joints and current sensor feedback in servos
  • feet…that’s the pressure sensors under robot’feet
  • memory…to keep trace of past experience and move with charm (hey girls !!!)
  • brain to handle all of the previous .

so, try this…lift one leg (don’t try 2 at a time :laughing: )…and feel your foot pressure feedback…um ? you see ? you can feel if you are balanced only with the pressure feedback on your foot sole…too much on the toes => you will fall to front =>move your ass to rear…too much on a side=>move thorax to the opposite. :smiley: i plan to walk like baby to find a good gait for quadrapod :open_mouth:

i’m pretty sure it’s the best way, but you can make a biped walk without sensors !..just teaching it movements…with the new Sequencer for example :wink: .

I’ve had a Balbot here in my house and tinkered with it a bit. Frankly the lack of an accelerometer and relying soley on the distance sensors renders it nearly useless. It can only operate on surfaces that are perfectly level and visually acceptable to the sensors. It uses the two sharp sensors to calculate its angle relative to the ground and if it encounters an ant the thing comes crashing down. I’m not trying to say that pressure sensors aren’t a fine idea on a biped, but I can say with certainty that the IR sensors are no way to go on an IP.

I was thinking the same thing about how well the IR sensors are able to detect a good clean reading. Someone did a school project I found posted on the web that put IR sensors up against a Ultra sonic sensor for accuracy and reliability and the conclusion was that the PING sensor was much more accurate and reliable.

what would be really nice is a cheap gyro and accel combo sensor. i hear that this is the only way to accurately get this kind of information

nick

sparkfun.com/shop/index.php? … 41&cat=71&

cheap gyro/accel combo boards

With the link provided, I could not find the combo sensor, just the accelerometer & g force sensor as two seperate divices.

Here is the page.

sparkfun.com/shop/index.php? … 98&cat=71&

You want either the IMU 6 DOF v2(very expensive) or
IMU Combo Board(1 2axis accel and 1 Gyro). Comes in two types.

The MicroMag 2 or 3axis Magnetometer could also be usefull.

I personally am looking at the Triple Axis Accelerometer Breakout - MMA7260Q on the second page.

Also for those that don’t use Micros or don’t like wiring stuff check out the Serial Accelerometer Tri-Axis v5 also on the second page.

Nathan