Jump to content
 

Simple servo controller


Dartmothian
 Share

Recommended Posts

If you know a little about writing software, I'd use an Arduino. You can buy an Uno or Nano for a few quid, and it will control up to 6 servos. Don't power the servo straight off the board though, as the output isn't high enough. You can buy very cheap power supply boards that will provide a big enough supply. There's also a shield board for the Nano that has the necessary pins to plug a servo straight into. I'll add some links if you're interested.

Link to post
Share on other sites

  • RMweb Gold

If you are happier with a basic like programming  language, try the picaxe range. http://www.picaxe.com/

I've used these for many years, and find them easy to get on with.

A bit more info about one of my boards  http://www.rmweb.co.uk/community/index.php?/topic/105820-servo-controller-board-using-picaxe/

 

Let me know if you wnt more info

 

Thanks

 

Dave

Link to post
Share on other sites

You don't specify what sort of input signal you want to use to control the servo position.

 

If you don't want to do any form of programming (why use a sledgehammer to crack a nut?) then the venerable 555 timer can be used to control a servo. Plenty of circuits available if you use your favourite search engine..

Link to post
Share on other sites

Depends how techie or DIY you want to go. I've used these successfully for both analogue & DCC..

 

http://www.tamvalleydepot.com/products/singletservodecoder.html

 

Available from a few UK outlets. e.g.

 

http://www.digitrains.co.uk/ecommerce/search/ssd002-singlet-accessory-decoder.aspx

 

Usual disclaimer.

 

P

Edited by Porcy Mane
Link to post
Share on other sites

If you are happier with a basic like programming  language, try the picaxe range. http://www.picaxe.com/

I've used these for many years, and find them easy to get on with.

A bit more info about one of my boards  http://www.rmweb.co.uk/community/index.php?/topic/105820-servo-controller-board-using-picaxe/

 

Let me know if you wnt more info

 

Thanks

 

Dave

I would be grateful for more info, in particular your program and how using servos has worked out on the layout.

 

I recently designed and programmed a Picaxe circuit for a fellow modeller using a servo to operate a gate on a private siding. In the end it turned out more cost effective to modify one of their AXE024 modules. The only problem I had was with the programming using their BASIC servo commands. I got the servo moving through the required angle at the correct speed but could not eliminate a single twitch which occurred at the end of each movement. In the end I posted my problem on the Picaxe Forum and one of their technical gurus rewrote the program eliminating the twitch. However, programming not being my forte I understand parts of the rewritten program but not the whole, so I wondered how you got on?

 

I would be happy to continue this conversation in the other thread if it is of no interest here.

 

Richard

Link to post
Share on other sites

  • RMweb Premium

I would also suggest looking at the Merg kits. They do a Pocket Money Project 'EZ Points' module to control a single servo, setup using a screw driver, for £1.86. The more sophisticated Servo4 module can control up to 4 servos and costs £6.30, but requires either a PC or a separate 'Setting' box to do the initial set up. Both come with easy to follow instructions, and lots of support from their members.

 

However, you would need to join (£16 per year and £5 joining fee) if you don't already know a member.

 

Ian Morgan

Hampshire

Link to post
Share on other sites

Many thanks to all who replied. I shall look at the suggestions and see which might be my better options as I know almost nothing about programming languages or protocols. I had a picture in my mind that I would only need one programming circuit with which I could set up the servos but this looks as though my imagination ran away with me. Can anyone point me to a site where I can read, in very basic terms, how thoekse units work..currently I am using servos with micro switches to limit travel and to change frog polaritybut I want to switch to something a little less Heath-Robinsonish and more reliable. Many thanks for your time and interst

Link to post
Share on other sites

 

The merg kits are good. I've built and set up a good few but as pointed out above, there is the additional cost of Merg membership and and learning the simple GUI software interface for setting up the larger boards. If you know a merge member these additional start up costs can be avoided. One problem that I've found with the merg kits is the occasional servo twitch which upgrades still seem not to have cured.

 

Thats why I suggested the Tam Valley Kit. It's readily available in the UK and can be "programmed" using integral push buttons. If you find the need to go DCC it can also be programmed to operate using CV's.

 

A quick read through the first part of the manual, might give you some pointers as to whether it may suit your needs.

 

http://www.tamvalleydepot.com/images/Singlet_II_Manual_v3a.pdf

 

P

Link to post
Share on other sites

  • RMweb Gold

I would be grateful for more info, in particular your program and how using servos has worked out on the layout.

 

I recently designed and programmed a Picaxe circuit for a fellow modeller using a servo to operate a gate on a private siding. In the end it turned out more cost effective to modify one of their AXE024 modules. The only problem I had was with the programming using their BASIC servo commands. I got the servo moving through the required angle at the correct speed but could not eliminate a single twitch which occurred at the end of each movement. In the end I posted my problem on the Picaxe Forum and one of their technical gurus rewrote the program eliminating the twitch. However, programming not being my forte I understand parts of the rewritten program but not the whole, so I wondered how you got on?

 

I would be happy to continue this conversation in the other thread if it is of no interest here.

 

Richard

I'm using the wrong computer at the moment, so haven't got the code to hand, but will post it later. I remember that I used the simplest possible program I could come up with. For my 8 channel board, there is a bit of jitter noise, but it doesn't affect the points as the servo unit isn't connected to the points at either end of travel. So far I have been using a single power supply for board and servos, which is supposed to be bad for causing jitter.

 

Thanks

 

Dave

Link to post
Share on other sites

If you only want to control a couple of points there is

https://www.heathcote-electronics.co.uk/servo.html

Available as single and double units. I've used them for uncouplers on my HOe layout, found them easy to setup and have had no problems with them. (He now does a dedicated uncouplers board as well, but I just used the standard unit)

Edited by JeremyC
Link to post
Share on other sites

An Atmega 328 microprocessor (like on an Arduino Uno, and programmable with the Arduino IDE) costs less than £3 and with a few other components (< £2) and a piece of stripboard you could control 12 servos or, say 9 if you also want the same chip to read a switch for each servo.

 

...R

Link to post
Share on other sites

An Atmega 328 microprocessor (like on an Arduino Uno, and programmable with the Arduino IDE) costs less than £3 and with a few other components (< £2) and a piece of stripboard you could control 12 servos or, say 9 if you also want the same chip to read a switch for each servo.

 

...R

 

 ... but that solution is somewhat removed from the question posed in first post.

Link to post
Share on other sites

  • RMweb Gold

I would be grateful for more info, in particular your program and how using servos has worked out on the layout.

 

I recently designed and programmed a Picaxe circuit for a fellow modeller using a servo to operate a gate on a private siding. In the end it turned out more cost effective to modify one of their AXE024 modules. The only problem I had was with the programming using their BASIC servo commands. I got the servo moving through the required angle at the correct speed but could not eliminate a single twitch which occurred at the end of each movement. In the end I posted my problem on the Picaxe Forum and one of their technical gurus rewrote the program eliminating the twitch. However, programming not being my forte I understand parts of the rewritten program but not the whole, so I wondered how you got on?

 

I would be happy to continue this conversation in the other thread if it is of no interest here.

 

Richard

Sorry for the wait, this is the code I'm using:

servo 0,75

servo 1,75

servo 2,75

servo 3,75

servo 4,75

servo 5,75

servo 6,75

servo 7,75

main:

if pinC.0=0 then servopos 0,75

    elseif pinC.0=1 then servopos 0,200

endif

if pinC.1=0 then servopos 1,75

    elseif pinC.1=1 then servopos 1,200

endif

if pinC.2=0 then servopos 2,75

    elseif pinC.2=1 then servopos 2,200

endif

if pinC.3=0 then servopos 3,75

    elseif pinC.3=1 then servopos 3,200

endif

if pinC.4=0 then servopos 4,75

    elseif pinC.4=1 then servopos 4,200

endif

if pinC.5=0 then servopos 5,75

    elseif pinC.5=1 then servopos 5,200

endif

if pinC.6=0 then servopos 6,75

    elseif pinC.6=1 then servopos 6,200

endif

if pinC.7=0 then servopos 7,75

    elseif pinC.7=1 then servopos 7,200

endif

goto main

 

Dave

Link to post
Share on other sites

 ... but that solution is somewhat removed from the question posed in first post.

If it can do 12, it can certainly do 1 or 2

 

In my experience initial questions can be limited in scope for want of the knowledge of what is available.

 

...R

Link to post
Share on other sites

Sorry for the wait, this is the code I'm using:

servo 0,75

servo 1,75

servo 2,75

servo 3,75

servo 4,75

servo 5,75

servo 6,75

servo 7,75

main:

if pinC.0=0 then servopos 0,75

    elseif pinC.0=1 then servopos 0,200

endif

if pinC.1=0 then servopos 1,75

    elseif pinC.1=1 then servopos 1,200

endif

if pinC.2=0 then servopos 2,75

    elseif pinC.2=1 then servopos 2,200

endif

if pinC.3=0 then servopos 3,75

    elseif pinC.3=1 then servopos 3,200

endif

if pinC.4=0 then servopos 4,75

    elseif pinC.4=1 then servopos 4,200

endif

if pinC.5=0 then servopos 5,75

    elseif pinC.5=1 then servopos 5,200

endif

if pinC.6=0 then servopos 6,75

    elseif pinC.6=1 then servopos 6,200

endif

if pinC.7=0 then servopos 7,75

    elseif pinC.7=1 then servopos 7,200

endif

goto main

 

Dave

Thanks for the listing Dave, my original program was very similar except I used an 08M and a single servo and included a couple of lines to switch some LEDs to indicate position. Whatever caused the twitch was nothing to do with the servo which is the usual cause. With the servo disconnected and an LED connected to the output to the servo you could see the brief twitch which I believe is down to the program commands rather than the circuit. A number of other PICAXE users reported some twitching and the fact that the Technical guru managed to produce a program without using the specific servo commands and cure the twitch suggests the problem is in the programming.

 

Thanks again Richard

Link to post
Share on other sites

Looks like the same idea as these. They work, but you'd need to add physical stops to the knob to stop the servo in the same place each time.

https://www.ebay.co.uk/itm/Multi-RC-Digital-ESC-Servo-Tester-3CH-ECS-Consistency-Speed-Controler-Power-NIUK/322815221119

Link to post
Share on other sites

With the mindsets controller you can replace the variable resistor with two fixed resistors, whose values you would have to experiment with, and connect them to a SPDT switch to throw the servo one way or the other. I did this some time ago as an experiment and while it worked OK there was some twitching of the servos which I never got round to sorting out.

Link to post
Share on other sites

 

Excellent circuit, but I would restrict the input voltage to 6V not 16!

 

While I would most likely use a PIC12F1840 nowadays (can do up to three servos), the analogue answer is much quicker to do when you don't need to mess about with software - but will be a bit more expensive due to the larger component count..

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share


×
×
  • Create New...