The following is a direct post from RobotSHop Support Center Communications:
Q1) With regard to Cytron Simple Rotary Encoder Kit and the hole size of the encoder disk, if I wanted to, I could make a piece with even more holes in it. is there a known maximum rotation velocity that the sensor can detect (with the wheel that comes with the kit)?
A1) The sensor can “spit out” data faster than the Arduino can process it, so if the Arduino is performing a calculation while the sensor is producing data, it wont be recorded. Having said that, you can increase the number of counts if you make the diameter of the wheel larger (the “optical” part of an encoder simply sends light between the two points, which is broken by the endoder wheel’s “teeth”. The light itself has a specific width which should be taken into account when making a new wheel.
Q2) Lacking an obvious way of attaching the encoder wheel to the motor, making an entirely new one, out of pvc, for example, and attaching it to the rest of my device, would seem the obvious solution. how thick is the wheel?
A2) Feel free to make a larger diameter wheel - the teeth only need to break the light and fit between the plastic parts of the infrared detector. The thickness can be smaller if you want. A standard dimension is 1/16".
Q3) ok. another important question: I need to power all these things. I can either use a battery with recharger, or a wall plug with an adapter. actually… hey! I have oppened up the arduino board I just recieved, and it has two large connection locations. I also recently invested in an external hard-drive, so that at least one of these connections is something I recognize! I have tested it, and found that I can plug the arduino into either the wall with one connection, or into my laptop with the other! either one makes lights flash! yes, indecent excitement, I know, absolute novice speaking here
so my questions: what happens if I plug both of them in? I expect that this would have no effect, detrimental or otherwise, but I would prefer to be safe than sory.
A3) If both the wallpower supply and the USB are plugged in, data is sent from the USB, but the board is powered from the wall supply (9-12V DC). Note that if you only use a USB, the current is limmited; for example, a USB port could never power a CIM motor.
Q4) Ok. now the hard part. I need to establish communications between:
this arduino board,
robotshop.ca/arduino-usb-microcontroller-board-1-1.html,
the encoder,
robotshop.ca/New-arrivals/cytron-simple-rotary-encoder-kit.html,
the motor whose velocity is being measured,
robotshop.ca/banebots-first-cim-motor.html
and… several devices (stepper motors) that are on the rotating part that need to be secronized with the rest. I can think of two options: some kind of wireless communications between the stationary parts and the rotating ones, or a sliding contact (not desirable). do you have any thoughts on the matter? I have one simple solution in mind, but it is not particularly ideal. It is to use two controlers, one to control the driving motor, the other to drive the stepper motors on the rotating part. the encoder would be attached to the rotating part, the (modified) code wheel fixed in place on the non-rotating part. the stepper motors could be programmed to respond to measured changes in rotational velocity. The problem is, the rotational velocity would have to change to send new information to the steppers, and so the rate of information transmission would not be great. it would be more like … start executing your code… … stop executing your code…
A5) The CIM motor is the largest motor we currently sell and requires a very powerful motor controller (25A continuous). Your wall adapter probably won’t beable to supply that, and most common batteries cannot output 25A continuously. A lead acid battery with thick wires is required. You can connect the encoder directly to the Arduino’s 5V, GND and digital pin. We don’t help with custom code. Note however that Arduino offers a great online tutorial and documentation at www.arduino.cc
Remember - ONE STEP AT A TIME. Learn how to get data from the encoder, then learn how to control a motor, then modify the encoder’s values within the code to output the right signal to the motor controller etc. Only then should you consider wireless.
Q6) is there some device I could use whose transparency can be electronically controled? at high frequency?
A6) yes, but it’s not the best option for you - your solution can probably be found by writing the proper code.
A7) off on another topic, the banebots motor has 4 holes at it’s top. two of them have things in them, the other two are empty. is this cheep (low quality) manufacturing in that the people making the motor just couldn’t be bothered to add the second two bolts or screws or whatever, or are the deliberately empty, and provided as the way of attaching the motor to whatever surface it is to be attached to? seeing the motor now, that would seem logical. I had been planing on designing a clamp mechanism.
A8) The treaded holes are useful for mounting either to a surface, or to a geardown. Most of the time, non-threaded holes are used to ensure whatever object it is connected to does not move with it. Manufacturers rarely make holes that won’t be used in some way.