Recent Posts

Pages: 1 ... 4 5 6 7 8 ... 10
Electronics / Re: Controller: Sharing Connections? Multiple Profiles?
« Last post by GrimBot on March 02, 2015, 07:09:32 AM »
Am I looking for something like this? 

"Servo / PWM controller. Use 2 microcontroller pins (I2C) to drive up to 16 RC servos or any user that requires a PWM signal. based on the chip PCA9685

Product page: Adafruit 16-Channel 12-bit PWM/Servo Driver - I2C interface - PCA9685


You want to make a cool robot, maybe a hexapod walker, or maybe just a piece of art with a lot of moving parts. Or maybe you want to drive a lot of LEDs with precise PWM output. Then you realize that your microcontroller has a limited number of PWM outputs! What now? You could give up OR you could just get this handy PWM and Servo driver breakout.

When we saw this chip, we quickly realized what an excellent add-on this would be. Using only two pins, control 16 free-running PWM outputs! You can even chain up 62 breakouts to control up to 992 PWM outputs (which we would really like to see since it would be glorious)

It's an i2c-controlled PWM driver with a built in clock. That means that, unlike the TLC5940 family, you do not need to continuously send it signal tying up your microcontroller, its completely free running!
It is 5V compliant, which means you can control it from a 3.3V microcontroller and still safely drive up to 6V outputs (this is good for when you want to control white or blue LEDs with 3.4+ forward voltages)
6 address select pins so you can wire up to 62 of these on a single i2c bus, a total of 992 outputs - that's a lot of servos or LEDs
Adjustable frequency PWM up to about 1.6 KHz
12-bit resolution for each output - for servos, that means about 4us resolution at 60Hz update rate
Configurable push-pull or open-drain output
Output enable pin to quickly disable all the outputs
We wrapped up this lovely chip into a breakout board with a couple nice extras

Terminal block for power input (or you can use the 0.1" breakouts on the side)
Reverse polarity protection on the terminal block input
Green power-good LED
3 pin connectors in groups of 4 so you can plug in 16 servos at once (Servo plugs are slightly wider than 0.1" so you can only stack 4 next to each other on 0.1" header
"Chain-able" design
A spot to place a big capacitor on the V+ line (in case you need it)
220 ohm series resistors on all the output lines to protect them, and to make driving LEDs trivial
Solder jumpers for the 6 address select pins
This product comes with a fully tested and assembled breakout as well as 4 pieces of 3x4 male straight header (for servo/LED plugs), a 2-pin terminal block (for power) and a piece of 6-pin 0.1" header (to plug into a breadboard). A little light soldering will be required to assemble and customize the board by attaching the desired headers but it is a 15 minute task that even a beginner can do.

We don't have a detailed tutorial up yet, but you can get our documented Arduino library which has both PWM and Servo examples from github!

Dimensions (no headers or terminal block) 2.5" x 1" x 0.1" (62.5mm x 25.4mm x 3mm)
Weight (no headers or terminal block): 5.5grams
Weight (with 3x4 headers & terminal block): 9grams
PCA9685 datasheet
- See more at: http://www.robot-italy.com/en/adafruit-16-channel-12-bit-pwm-servo-driver-i2c-interface-pca9685.html#sthash.BbxgewAu.dpuf
Misc / What happens when a robot does something that it isn't programmed to do?
« Last post by DSMOS on March 01, 2015, 08:13:53 PM »
I just finished watching Big Hero 6, and a part that really caught me was when Hiro removed Baymax's original programming, but when it was put back in, he apologized. Then when Hiro tried to remove it again, Baymax wouldn't let him. How does this work? It feels like one of those "I'm afraid I cannot let you do that, Dave" moments...
Electronics / Re: Controller: Sharing Connections? Multiple Profiles?
« Last post by mklrobo on March 01, 2015, 03:04:30 PM »
 :) Hello!
I would offer an opinion, based on what I interpret
of your question(s).
If you have the controller board, and want to activate other items,
to expand the control, use a 4 to 16 controller chip.(forget the name at this
time). You put in a bianary input (the 4) and the chip activates one of the
16 outputs that it has. A fifth line can be used to turn the item on or off, like
a control line. (Have used this myself, to expand the possibilities of an MCU)
In regards to the positive or negative control, I would recommend to use
the positive to control, unless you are using RF, in which case, you will
need more attention to grounding; but still doable.
But, with 10 lines, you could control 32 items, using the bianary control.
Good Luck!     ;D ;D ;D
Misc / Re: Solar robot question
« Last post by mklrobo on March 01, 2015, 02:34:16 PM »
 :) Hello!
I would offer an opinion in regards to the power problem.  ;D
If you use a laser, or ultraviolet power source, the solar cells
would have to charge on this frequency of light. Not too sure
how that would go. The flood light would be good, because
any camera processing done by the robots would need light
I would suggest a battery exchange station. The robot has a battery
that gives so many ampere/hour work; then needs to recharge.
Have a battery exchange station, when the robot backs up to the station,
the station changes the battery, and also has ready charged batteries
waiting for the rest of the robots. It charges the batteries while the
other robots work. The station could also be a "control site" for communication
between the robots, to coordinate the work. The control site could relay
the progress of the work, any other information you find that you
will need, as well as house a main solar cell to aid in recharging.
Keep me posted.......... ;D ;D ;D
Electronics / Re: Controller: Sharing Connections? Multiple Profiles?
« Last post by GrimBot on March 01, 2015, 11:27:34 AM »
Maybe it would be a "positive" and "negative" selection..  Since the hardware being messed with need both of those connections to be selected, maybe there is a piece of hardware where I plug the negative (or positive?) wires of each of the pieces on the chain into a hub and then use a control to tell it which one of those negatives (or positives?) gets the power.  I don't think it would need to be selected on both ends since the hardware connected to the non-powered lines would be ignored, right?

I don't even know if it is possible but if anyone here knows about this stuff, let me know if I'm barking up the wrong tree.
Electronics / Controller: Sharing Connections? Multiple Profiles?
« Last post by GrimBot on March 01, 2015, 11:07:14 AM »
Hello, I'm still pretty new and have an electronics question.

If I have a handful of controller/feedback slots, would there be a way to share those connections with multiple pieces of hardware and then select through hardware profiles to choose which piece of hardware on that pins chain I want to mess with?

If it could be done I'd love to know what additional electronic bits I would need to make it work like that.

Below is the controller I have and would like to expand on, if possible.

ATmega328P Arduino Compatible Nano V3 Improved Version With USB Cable


Change the USB chip, improve the download speed and stability of WIN7/WIN8

Microcontroller Atmel ATmega328
Operating Voltage (logic level): 5V
Input Voltage (recommended): 7V ~ 12V
Input Voltage (limits): 6V ~ 20 V
Digital I/O Pins: 14 (of which 6 provide PWM output)
Analog Input Pins: 8
DC Current per I/O Pin: 40mA
Flash Memory: 32KB (ATmega328) (of which 2 KB used by bootloader)
SRAM: 2KB (ATmega328)
EEPROM: 1KB (ATmega328)
Clock Speed: 16MHz
did you read the datasheets for theses devices?

to save microcontroller I/O lines the PWM input pin of the driver boards will be held “high” by connecting them directly to the 5V VDD supply to the driver board.
It sounds like you plan to hard wire the motors to full speed. Is this correct? if so what is the intended use of the encoder feedback?

I did not see any part numbers or pinouts for the motors/encoders in you post so it is hard to provide guidance on how to connect them.

LS7184 to Atmega 328
pin 7 (up/dn) --> Atmega 328 (digital input)
pin 8 (CLK) --> Atmega 328 (digital input, i recommend using a pin that is interrupt enabled)

you will need one LS7184 chip for each encoder. these chips would work fine for interfacing the encoders but be aware that they do not count pulses, your microcontroller will have to count the clock pulses every time one is received which consumes processing time. you must be careful to ensure that your micro is not caught up in other process such as figuring out where to drive and misses the encoder clock signals, this is why i recommended an interrupt pin.

Hey GrimBot! It depends what kind of casings you have in mind. Do you have any examples or designs I could check out? And what materials are you looking to have them made out of?

Mechanics and Construction / Re: Servo Question: Winch, Anchor, Lift & Drop
« Last post by bdeuell on March 01, 2015, 09:54:49 AM »
i think you will want some type of clutch mechanism between the servo and spool (i am assuming the servo will include a gearhead). Attempting to backdrive a gearhead would create drag on the system (assuming a high gear ratio this drag can be quite significant). This drag would likely create an undesirably slow drop speed.

As for damaging the servo I believe it depends on many factors such as the loads and how you have supported the spool. in my opinion as long as you do not exceed the servos operating specs (torque, velocity, or radial load) you should be able to backdrive the motor.
What about casings,skins,or bodies to protect from elements? Or would this be more an injection molding job?
Pages: 1 ... 4 5 6 7 8 ... 10

Get Your Ad Here