Dear GHI Community,
I can say for sure that having/using the FEZ Spider Kit and programming in C# using the .NET Micro Framework is a really nice/easy way of accomplishing/realizing project ideas.
For the first time I would like to use the possibility to ask you for some help and suggestions. I did search the forum here and I found a few helpful topics on controlling a brushed DC motor, but I wanted to ask you here once again for your opinion because I am quite new to this matter and a little bit confused because there are so many products out there that I find it a bit difficult to focus on any. I am not sure which controller/driver to choose. This is why I need your help/input on this issue.
What I want to do is to find an easy way to control a 24V DC brushed motor. According to the manufacturer of the linear actuator the motor is a 24V DC permanent magnet brushed motor. I do posses the L298 Motor Driver from GHI but obviously I cannot use it since the linear actuator I want to use draws up to 20A peak current and about 10A continuous current (the L298 module allows only up to 3A).
You can see from the attached images that the motor operates with 24V and it will draw 2.2A without load and 9.5A with full load (this is the typical continuous current draw) but bear in mind that the peak current draw might be about 18A while starting and about 14A while operating. The different curves are for different ambient temperatures.
There are many ready-to-use controllers out there, I think I would not even need to solder up my own module using chips and other components. I can just buy an available motor controller and then program it the way I want it to work. Exactly here is my problem. When I have an external component (not original GHI module) I do not really know how to write a driver and then use it with my FEZ Spider Kit. Do I have to build my own module using the “.NET Gadgeteer Module Builders Guide” officially available, or I can just write the driver in my code? How do I write this driver so that I can control my motor?
I made a research on suitable motor controllers from different manufacturers and here is a list I came up with (listing only a few because there are really a lot more out there):
[ol]DC Motor Driver 2x15A, 4.8-35V (http://www.robotshop.com/dc-motor-driver-2-15a-3.html)[/ol]
[ol]Pololu 18v15, 5.5-30V, 15A Motor Controller (http://www.robotshop.com/pololu-motor-controller-30v-15a-5.html)[/ol]
[ol]Pololu 15A, 5.5 - 50V Single Motor Controller (http://www.robotshop.com/pololu-15a-single-motor-controller-3.html)[/ol]
[ol]Cytron 13A, 5-25V Single DC Motor Controller (http://www.robotshop.com/cytron-13a-single-dc-motor-controller-4.html)[/ol]
Let’s take for example the last motor, the Cytron 13A, 5-25V Single DC Motor Controller. On the official website of the manufacturer (Cytron.io - Simplifying Digital Making) you can find the manual (Cytron.io - Simplifying Digital Making) and a sample code (Cytron.io - Simplifying Digital Making). They are using some PIC microcontroller (PIC 16F887) but they say that any other microcontroller (and I want to use FEZ Spider) can be used to control the circuit and thus the motor. They say that it is very straightforward - there are only three wires (PWM, DIR and GND, DIR for direction). But I really do not know how to start writing a simple driver so that I can use this motor controller with my FEZ Spider and control my motor. I would appreciate it if you could help me start with this. It seems easy (there are really actually two lines I need to control: PWM and DIR, so supply PWM signal and digital signal for the direction) but I do not know how to start. Can you help me and give me some examples using this motor controller from Cytron? Or perhaps for the first one, the DC Motor Driver 2x15A, 4.8-35V. I just want to see how to write my own drivers for some external, non-Gadgeteer components. I know that for some of you it seems like an easy game, but I am quite new and unsure.
I am also not sure why the Cytron motor controller costs about 16$ and the others about 50$. What can the other motor controllers do that the Cytron one cannot?
If you have any other suggestions, like some other (better, cheaper, etc.) motor controllers that I can use directly with FEZ Spider, then please share them with me, I would be grateful. If you know any resources I can use, then please share the link.
Thank you in advance for your time and cooperation!