using a 360 degree servo as a temp gauge

Hello everybody,

I want to make a temperature gauge for my car. I have bought a 360 servo so i could cover a wide range of temps. I assumed that it would work like a standard servo. link to servo to follow

The servo sweep sketch does drive the servo back and forth but at a wider range than 180 degrees. if i take out of the loop and send the servo a single 180 degrees it just continually rotates. if i send it 90 it doesnt move at all and 0 sends it continually rotating the other way.

can anyone tell me how i can use this servo so that i can move it to any degree and have it hold there so would function as a temperature gauge.

I have tried various servo sketches and stepper motor code but no luck.

any help would be great.

thanks toby

link to servo on cool components http://www.coolcomponents.co.uk/catalog/product_info.php?products_id=368

can anyone tell me how i can use this servo so that i can move it to any degree and have it hold there so would function as a temperature gauge.

You can't. Once a servo is modified for continuous rotation is ceases to become a servo but rather it has become a bi-direction variable speed geared motor. You need a standard unmodified servo if you wish to be able to command it to go to a specific point and stop.

Lefty

The servo does exactly what it is supposed to do.

What you have is a modified servo, usually used for driving robots around.

A servo that has been modified to continous 360 degree rotation can not be used as an ordinary servo.

Hmmm. Not to hijack a thread, but I have a related question :). If a servo doesn't say what it's range is (degree-wise), would you just assume it's 180 degrees? I'm looking at these ones in particular:

http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=200410776228&ssPageName=STRK:MEWAX:IT

Brand new & high quality Small size, light weight, high efficiency Ideal for R/C Helicopter, Plane, Car & Boat or trucks use Compatible with most standard receiver connector: Futaba, Hitec, Sanwa, GWS, Airtronics & Aashai etc.

Dimension: 23x12.2x29mm Stall torque: 1.5kg/cm Operating speed: 0.3sec/60degree(4.8v) Operating voltage: 4.2-6V Dead band width: 10us Each servo has 3 different servo arms and mounting screws Connector wire length: approx. 160mm

Package included

2 x 9g Servo 6 x Mounting screw 6 x Servo arm

If a servo doesn't say what it's range is (degree-wise), would you just assume it's 180 degrees? I'm looking at these ones in particular:

No. There is no industrial standard on what degrees of travel a servo has. They are guaranteed to move in a range of 1ms to 2ms pulse width, but not how many degrees that range equates to.

Most have some 'over-travel' below and above those pulse widths, but again there is no industrial 'standard' of how much over-travel a given specific servo model might have. The whole 0-180 degrees variable that the Arduino servo command is using is an assumption and not based on true facts, and can and does confuse people new to programming and using servos.

So if actual physical travel is important for your application you must either check out the specs or datasheet, or contact the manufacture before you purchase.

In most R/C servo applications the servo is used to turn a straight arm that has holes at different lengths along the arm, thus converting rotary travel to linear travel, and the length of linear travel is adjusted by which hole you select.

Lefty

ah well they do say assumption is the mother of all screw ups. I assumed because the description said it was a servo it would act like a servo. So what i have is more of a stepper motor, right?

to get this to work as desired i would need to feed back the position of the needle, right? Could I do this with a encoder wheel? http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1257038219

I am tempted to get a standard servo for an easy life but i really want a range of motion more than 180. A standard servo that operates between 0-360deg would be ideal.

any ideas?

these might do the job: http://www.pololu.com/catalog/product/1218

I have a feeling there must be something better for the job. Would i be better off with a stepper motor

LCD Panel and have a nice digital temperature gauge and make it do speed, tachometer and oil pressure as well ? :)

I have done some gauges using processing and could display them on a lcd screen from a cheap netbook. I want to see some needle leaping about and i want to make use of some funky led's.

I can buy commercial servo driven gauges but most of them are expensive and ugly. I was hoping i could make one cheaper and prettier. Plus it's more of a challenging problem.

I think i have found the products i want but dont know where to buy them

Freescale MCZ33970 http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MC33970

Series 6405-15xx Stepper Motors http://www.fraenamd.com/steppermotor.htm

anyone know where to get these products in the uk?

I want to see some needle leaping about

On a temperature gauge ? , the one on my car goes to 90 C and doesn't move again. Very boring.....

well yes, a temp gauge isn't going to jump about. I want to make a set of dials for a dash board. The principle is the same.

Maybe i should have titled this "i want to drive a gauge from and ardiuno" I should have done more research before buying the 360 servo, but it also seems a standard servo won't do what i want anyway.

I am learning plenty

Vacuum gauges are fun for leaping needles, but my latest car is a diesel and they don't have a vacuum to measure. Also very boring :(

If you could rig up a rack and pinion arrangement with the needle on the pinion and have the servo push and pull the rack, the servo wouldn't need to move very far. Just an idea.

Why not just use standard car gauges that are controlled electrically 0-5v or ±12V and controll them from arduino?
like:
http://www.egauges.com/vdo_grou.asp?Series=DBF_Amber
(not good example but these go more than 180 deg)

It is maybe possible to take those meters apart and change the background of the needle to suit your needs :sunglasses:

D.

200 bucks a throw ? Ouch......

Like i said NOT A GOOD EXAMPLE, but finding a cheap one that takes -+ 5V should not be too hard, just to mod and hack with, I have seen meters with alterd background, and with arduino to control the meter it is easy to mark up a new background by outputing standard control series of signals eg. 1v 2v 3v...

like i say expensive and ugly. If i can't build my own for cheap then i was planning on buying a off the shelf electronic gauge and changing the face

if i can rig up a home sensor then this looks like it might work. http://www.blog2.angryviking.com/?p=49

code http://www.blog2.angryviking.com/?p=58

Not sure if my 360 degree servo will work instead of the stepper motor.

360 servos are used in CNC and then with rotary-encoders, it should work, but precission is not guarantied if the rotary-encoder only travels about 360 deg. for so small travel to work the rotary encoder should give you 256 or 512 or 1024 signals for full travel of the needle and an indication of start point and end point (the meter should be calibrated on startup). Good luck.

D.

A stepper motor is your best bet: http://www.blog2.angryviking.com/?p=49

Oh.. forgot.. You could salvage a small stepper from a broken printer or scanner. that is the easiest way. Electronics stores are required to take broken el-equipment back, and often store them behind of the shop in containers :) Relatives and friends probably have an ancient printer in the attic, those are the strongest ones because printers and scanners in the old times were heavy and bulky.

D.