I want to know if i...
 
Notifications
Clear all

I want to know if it is possible to control the servo motors through analog pins rather than the pwm pins ?

16 Posts
7 Users
1 Likes
6,599 Views
Gulshan
(@gulshan)
Member
Joined: 4 years ago
Posts: 127
Topic starter  

Today I saw a video where there was a robotic arm controlled by 5 servo motors through the nrf24l01 modules. I wanted to make a project where I will a control a robotic car and a 6dof or 5dof robotic arm with same arduino via nrf24l01 modules. Do you think it would worth it or at least work safely.

here take a look:-

https://www.hackster.io/mertarduino/how-to-make-wireless-gesture-control-robotic-hand-cc7d07


   
Quote
frogandtoad
(@frogandtoad)
Member
Joined: 5 years ago
Posts: 1458
 

@Gulshan

Posted by: @gulshan

I wanted to make a project where I will a control a robotic car and a 6dof or 5dof robotic arm with same arduino via nrf24l01 modules. Do you think it would worth it or at least work safely.

here take a look:-

> https://www.hackster.io/mertarduino/how-to-make-wireless-gesture-control-robotic-hand-cc7d07

I don't see why what you have described would not work.

Why don't you have a go?
The link you posted provides you with a great starting point, with all the code you need.

As someone here said previously, Arduino is learning by doing.
Have a go, then ask questions around where you're stuck and someone here will certainly help you get through it.


   
ReplyQuote
Gulshan
(@gulshan)
Member
Joined: 4 years ago
Posts: 127
Topic starter  

@frogandtoad

actually with the nrf24l01 modules, in case of arduino the pins 11 12 13 are preoccupied with two more pins like 2 and 4 so basically 3,5,6,9,10 only these pins are available(while I need total 6 pins for 6dof Robotic arm) so I thought maybe If servos can be controlled by analog pins and I use pwm pins to run my robot car then maybe my project would work without burning my arduino.

mostly I heard that servo motors can only be controlled by the pwm pins of arduino. 


   
ReplyQuote
frogandtoad
(@frogandtoad)
Member
Joined: 5 years ago
Posts: 1458
 

@gulshan

From what I understand, the analog pins can be used as digital pins, but do not support PWM as they are, however, I believe that with software PWM, you may be able to do what you want.  Alternatively, Bill has a video on how to create your own I2C implementation, which may be exactly what you want too, so it may be worth looking into...


   
ReplyQuote
Gulshan
(@gulshan)
Member
Joined: 4 years ago
Posts: 127
Topic starter  
Posted by: @frogandtoad

I2C implementation

If you are talking about the PCA9685 I was gonna order one of those recently cause I really need at least 12 or 14 PWM pins But the thing is I really don't know if it is possible to control it by Bluetooth modules or most likely with the nrf24l01 modules, cause nobody have demonstrated it yet as far as I have seen.

Is it even possible ?


   
ReplyQuote
frogandtoad
(@frogandtoad)
Member
Joined: 5 years ago
Posts: 1458
 

@gulshan

No, I wasn't talking about the PCA9685 module, but that is a very good piece!

Bill actually showed how you can create your own I2C implementation for your devices, and that may be worth a look if you don't want to purchase another board or module.


   
ReplyQuote
(@zeferby)
Member
Joined: 5 years ago
Posts: 355
 

@gulshan

+1 for the PCA9685

About "remote Radio Freq. command", that's the job of the 2 arduinos: one of them is "on board" the robot, communicating with peripherals like the PCA9685 with I2C and the listening to the "commanding arduino" through RF.

Eric


   
ReplyQuote
(@dronebot-workshop)
Workshop Guru Admin
Joined: 5 years ago
Posts: 1075
 

The PCA9685 is the best way to go. It's an I2C device and you would have no problem using it in a circuit along with Bluetooth or an nfr24L01.

As @frogandtoad has already stated the Analog pins on the Arduino can also be used as digital I/O pins, but they do not support PWM. So they can't be used for servo motors.

One other alternative is to move to an Arduino Mega 2560, as it has 15 PWM-capable pins.

If I were doing this I would use the PCA9685. It is pretty simple to use and it has the advantages of having all of the servo connectors and a power connector on board, so it really simplifies the wiring.

?

Bill

"Never trust a computer you can’t throw out a window." — Steve Wozniak


   
ReplyQuote
Gulshan
(@gulshan)
Member
Joined: 4 years ago
Posts: 127
Topic starter  

@dronebot-workshop

Well yes, in case of the arduino mega whether it is nrf controlled Robot Car+ 6DOF Arm or a bluetooth controlled Robot Car+ 6DOF Arm it would likely be very simple but how can we be able to control the PCA 9685 wirelessly (Although I haven't Seen anyone doing that on any where {Except the SunFounder Smart car where the car has only one Rasberry Pi by which it war controlling the Robot car by L298N Bridge driver and also controlling the 3 servo motors by PCA9685 Remotly }) ? 

PCA 9685 will likely be cheaper the a mega board but I don't know how can I wirelessly control it. Does anyone have hint ? ? 


   
ReplyQuote
(@dronebot-workshop)
Workshop Guru Admin
Joined: 5 years ago
Posts: 1075
 

@gulshan

You don't control the PCA9685 (or any other I2C device) directly wirelessly. You build a controller with an Arduino and control THAT wirelessly. 

Bluetooth and other wireless modes are just methods of communication. It makes no difference if you are controlling something wirelessly or if you're using a wired method like USB or RS-232.

Just build your controller using the PCA9685 or an Arduino Mega and get it working using USB. Then, once it works to your satisfaction, simply add a Bluetooth module to the circuit.

The article I did on building a 5-DOF Robot Arm has a schematic for a controller that uses a PCA9685 and an Arduino Nano. Try building it and getting everything working first. Then remove the potentiometers and add a Bluetooth module, along with the code to control it.

Does that make sense?

?

Bill

"Never trust a computer you can’t throw out a window." — Steve Wozniak


   
Jonnyr reacted
ReplyQuote
Gulshan
(@gulshan)
Member
Joined: 4 years ago
Posts: 127
Topic starter  
Posted by: @dronebot-workshop

Does that make sense?

Yes I will try it. Thank you


   
ReplyQuote
Gulshan
(@gulshan)
Member
Joined: 4 years ago
Posts: 127
Topic starter  

And by the way are PCA9685 and this

https://www.banggood.in/2-Channel-Motor-16-Channel-Servo-Expansion-Board-For-Arduino-UNO-Smart-Car-Chassis-Robot-Arm-p-1051594.html?rmmds=search&cur_warehouse=CN

are same Thing or Anyone has ever tried it because I think it would be way better than PCA9685 ?


   
ReplyQuote
(@dronebot-workshop)
Workshop Guru Admin
Joined: 5 years ago
Posts: 1075
 

@gulshan

That is a PCA9685 and an L293DD on an Arduino shield. If you also need the motor controller to drive your robot car it would be a great option.

"Never trust a computer you can’t throw out a window." — Steve Wozniak


   
ReplyQuote
WZ6S
 WZ6S
(@wz6s)
Member
Joined: 4 years ago
Posts: 2
 

I'm in the process of building a controller for a 6DOF SainSmart robotic arm and other multi-channel servo projects.  I built a sloping front enclosure for the console which has 6 potentiometers with large (1.25") knobs.  The front vertical surface below the slope has a toggle switch for Arduino VCC and a LED panel light.

 Inside the console is an Arduino Nano mounted in a screw terminal breakout shield that receives the 6 voltage divider analog inputs.  I use the mini USB connector on the Nano to receive power from the console power switch. Also, the 5v supply and ground connect to the 6 pots running in parallel. The Arduino 5v pin, ground pin, analog pin 4, analog pin 5 terminals connect to a length of common telephone 4 conductor flexible cable that runs out the back of the console to 4 connections on a PCA9685 mounted close to or even on the robotic arm. This approach really simplifies the wiring (thank you I2C) and allows the control console to be a comfortable distance from the robotic arm.

The PCA9685 has it's own separate toggle switched power. 

I really want to thank Bill for the great lessons on robotic arms, servos and the PCA9685.

I do have a question about the controller sketch that uses the Adafruit PWM Servo Library.  Is there a way to program in individual sweep limits for multiple servos?


   
ReplyQuote
AngeloB
(@angelob)
Member
Joined: 5 years ago
Posts: 44
 

I built a robot arm :

 

 

 

image

 

and it talks 🙂

EzAng


   
ReplyQuote
Page 1 / 2