Newbie Questions: Stepper Motor Controller; Servo Controller

So this thread is kind of split into two parts, but I figured it’s better than making two threads. Anyways, let’s get down to business…


Stepper Motor Controller:

I’m looking to either purchase or [preferably] build a stepper motor controller. At this point in time, I was looking at purchasing THIS; I’ve heard great reviews, and it’s $80, a lot less than other controllers I’ve seen out there. Not too keen on the single board approach, but the lower price is worth it in my opinion. Obviously anything this price or lower will be considered. If it’s a modular approach (buying 3 drivers, then attaching them to a breakout board) then don’t worry about the breakout board; I have a schematic for an awesome one already. So anyways, in a nutshell, purchasing budget = $80 or [preferably] less.

This seems like a good time, so I’ll throw out the specs of the motor; I’m looking at two motors, but both at 6-wire Unipolar motors:

Motor 1: 6.2V, 1A/Phase, 4 Phase
Motor 2: 3.6V, 2A/Phase, 2 Phase

Anyways, on to to topic of building. I’d like for there to be detailed schematics, as I’ve built very few electronics but seems to be getting the hang of it quickly. Anyways, I’d prefer for it to have microstepping, but if we can get something that works nicely with full stepping only for nice and cheap, that will work just fine for now :slight_smile: Again, if a breakout board is required, I’ve got that covered. Budget for building one would preferably be a tad less than buying, so let’s say <$70.

If I missed any info lemme know, and thanks for the help in advance!


Servo Controller:

Next up, I need either 1 servo controller capable of controlling 12 servos simultaneously, or 2 controllers capable of controlling 6 each. I would greatly prefer to build these over buying, but if the price is right, I’m willing to go that route. I need these to be as quick and precise as possible, while being as inexpensive as possible. I’d also prefer for them to be as small as possible! My main microcontroller for the project is an ARM Cortex M3, so I’ve got a fair bit of processing power. Lemme know what you guy’s have!

Also, if there’s anything you feel I should research to help in my understanding of either of these topics, and will help me eventually design these things myself, just list them off and I’ll gladly Google them:)

Thanks a lot,

- Jesse

Hello Jesse,

I don’t really have any suggestions for you on the stepper motor section. Maybe someone else on the forum knows of a good unipolar stepper motor controller.

As for the second section, have you seen the new Micro Maestro servo controller we just started selling? It is small, precise, and can control up to 6 servos, all for $24.95. They are individually addressable, so you could connect two of them to the same serial line to control 12 servos.

-Ryan

What type of ARM Cortex M3 are you using? What’s the name of the board it is on?

I’m just curious. We’re starting to get interested in that architecture so it’s good to know what’s out there, and what people like or don’t like about it.

-David

The specific processor I am using is made by ST Microelectronics, model #STM32F103. The board that it’s on can be found Here. :slight_smile: Once I start learning a bit more and getting a bit more knowledgeable I’d be happy to assist everyone in any way I can :slight_smile:

Back to the servo controlling, I’ve been thinking. These servo’s have 3 wires; signal, V+, and Ground. Obviously the V+ and Ground to a power source, so that leaves us with the signal wire. From what I understand, these servos see a constant voltage, so just the signal wire indicates how much/when/which direction they move. Is this correct? Assuming it is, would I not be able to produce a very small breakout board that the servos plug in to that connects all the V+ lines, and all the Ground lines, then sends them to the power supply? Then I would be able to attach each separate signal wire to my controller’s outputs and use the built in PWM to control them. I don’t know if this makes sense (as I mentioned I’m new), but it makes sense to me in my head :slight_smile: Any input?

Thanks,

- Jesse

Your idea for wiring servos is generally correct. How many IO lines are available on your Cortex M3? Each of the servo outputs is going to need a dedicated IO line or you will have to incorporate a demultiplexer in to your system. When you use a separate servo controller that responds to serial, you only have to attach it to your serial bus. You also said you required a controller that is as quick and precise as possible. Getting accurate pulse timings can be a challenging task, especially if you are not familiar with timers, interrupts and writing time sensitive code in assembly.

It sounds to me like you do not know how servos are controlled. I would recommend researching how servos communication actually works before making a hardware decision.

- Ryan

Your observations are correct :stuck_out_tongue: Thank you very much with your help so far, and I’ll come back once I’ve got a better understanding of how these things work!

- Jesse

Alright, well I’ve done some reading and I’d say I have a fairly solid understanding of how servos work now.

Just due to the sheer amount of I/O ports it would take up, I’m thinking of just having a servo controller with a separate micro-processor. I just don’t see any sense in using 1/4 of my I/O ports just for the servos. So I assume people just use PIC Controllers for projects like these? I’ve seen quite a few that do. The question I have now is, how do I make the PIC (or whatever I choose) communicate with my main micro-controller (the ARM)?

Thanks,

- Jesse

Hello,

You haven’t said what you are trying to use the PIC for. Usually the simplest thing people do to interface MCUs is to use TTL level serial. There are various other protocols too though, like I2C, SPI, etc.

- Ryan