I will be building an Arduino based wireless stepper motor controller. As a user input I will use 2 pots to control 2 motors. Functions I will require is forward, backward rotation (as fast as the pot movement) and possibility of setting 2 end points on each of the motor.
As a newbie I understand it should look something like this: Pots & buttons-Arduino-TX wireless module .... RX wireless module-Arduino-Motor drivers-motors. And obviously the power supply for both units and motors.
Do I understand it right? What would be your suggestions guys?
I will be building an Arduino based wireless stepper motor controller.
You have a little work ahead of you.
You need to decide which wireless technology you wish to utilize. From many possible ones: Google
Review the various radios and their capabilities and limitations and complexity to implement!
Once one is complete, you need to identify what you need to transmit. Two ADC signals it would appear at the moment. This looks like a one-way communication path but do you need to have confirmation that the receiver obeyed the sender? Ah, ha.
Once you have gotten through #2, look for the appropriate library to glue your Arduino code to the transceiver module. You really need to review the library and the matching hardware to ensure you can get the messages you require. Take a look at similar projects done by others on the Forum/Internet and determine if they achieved the total of what you want to do. Look for issues in others projects and be aware that RF radios can be very inexpensive or fairly expensive but that the cost difference is usually based upon the sophistication of the communications. Do not be afraid to chuck it all and go back to #1 if you find something in your research that makes you uncomfortable... for example, a note in an article/review about a radio being interfered by cellphone communications nearby could be a red-flag for you.
Thank you for your replay Ray. I now have a lot of food for thought.
I have found a 4XXMhz wireless data module on ebay. http://cgi.ebay.co.uk/ws/eBayISAPI.dll?ViewItem&item=111074277841&fromMakeTrack=true&ssPageName=VIP:watchlink:top:en
Based on your experience do you think a module like this one would work in my communication?
I don't require a feedback from the RX unit as long as the stepper motor can hold the position* ,so one way transmission would be fine. I am not sure how doable a position hold is on a stepper motor without an external position sensor. I will require the motor to be >360 degrees capable.
*By holding the position I mean motor being manually (by hand) moved out of position and going back to it automatically.
A stepper motor has no intelligence and no method to signal to the computer what position it is at. The whole system works by assuming that if the computer tells it to move 10 steps that's what it does and nothing (like a heavy load) prevents it from making the steps and nothing (like a hand) makes it move from its stationary position after the 10 steps have been executed. Unlike a DC motor a stepper motor is powered all the time, even when stationary, and the electricity/magnetism gives it its "holding torque". You must design your project to stay within the chosen motor's limits.
Good point. I wasn't exactly sure what possibilities the stepper motor has. In this case I would abandon the position hold function.
So I need forward, backward (proportional) and end points for each of the 2 motors.
Many newbies to Arduino elect to purchase the Experimenters Kit and work thru the tutorials. Others, purchase items of interest and work thru how to connect and program them. The Internet is literally full of information.
If you are going to use a steppe motor be sure that you understand the difference between a proper steppe motor driver board (the Pololu A4988 is an example) and a h-bridge driver board intended for DC motors (many of them use L293 or L298 chips).
The proper drivers usually only need step and direction connections to the Arduino and, more importantly can drive the motors at high voltage (30v?) to maintain torque at higher speeds.