Revolution per minute, briefly is a speed of rotation expressed in revolutions minute. the tools for measuring RPM usually use tachometer. Last year ago i found interesting project made by electro18, and it is my inspiration instructable, he was made "Measure RPM - Optical Tachometer" link is below
this project is very inspiring and i thought i will remix and fit specifically to measure mini motor dc.
Mini 4WD hobbies measure RPM is a routine activity to prepare machine before attach into the car. So this will become important tools that always carry and can be use anywhere needed, so lets we make our rpm checker
Step 1: How Its Works
This tools works very simple, rim rotated by the motor then sensor read revolution of white point get from that rim. Signal from sensor send to micro control calculated and displayed the rpm result, that's all. But how to get all things is done , lets we begin into the steps
Step 2: Measurement Method
There is variation method to measure RPM
1. By Sound :
There is some nice instructuble how to measure Rpm of using free audio editing software https://www.instructables.com/id/How-to-Measure-RP... , the works is to capture sound frequency, analyze and crop repeatable rhythmic and calculate for get per minute.
2. By Magnetic
There is some nice Instructable source about how to measure Rpm by magnetic field
https://www.instructables.com/id/RPM-Measurement-U... the works is to capture pulse and converting into revolution every time magnetic sensor facing a magnet. some of use Hall Sensor and neodymium magnet
3. By Optical
Again there is much of source of how to measure Rpm by use optical https://www.instructables.com/id/Simple-Motor-Spe...
This method that i choose for develop the device, because is no need silent environment during measuring.
Step 3: Electronics and Programming Method
Optical read is use reflected radiation of infrared beam to the object and received by infrared photodiode, the object with color white or light color more easy to reflect than black color or dark color. I choose to use TCRT 5000 from Vishay is already packed with plastic case and it small
This IR sensor can become analog sensor or digital sensor, Analog meaning have a range value (example from 0-100) is more fit to detect the distance. For this case we need to get digital signal, meaning only (1 or 0) on or off is fit to get counting value. To convert from analog into digital i use IC LM358, basically this is Amplifier IC but This IC can become voltage comparator when range of target Input can be set by trimpot resitor then after this IC give one output (On or OFF)
Calculation RPM Formula
After triggering input from High to Low, then data calculate with time and revolution
1 rpm = 2π/60 rad/s.
Signal from IR attaches an interrupt 0 ,into pin digital input 2 on arduino, whenever the sensor goes from LOW to HIGH , RPM is counted. then the function will be called twice increment (REV). To calculate the actual RPM, we need the time taken for one revolution. And (millis() - time)is the time taken for one full revolutions. In this case , let it be the time taken for one full revolution , so the total number of revolutions RPM in 60sec ( 60*1000 millisecond ) is : rpm = 60*1000 / t * actualREV => rpm = 60*1000 / (millis() - time ) * REV/2
the formula is got from this link https://www.instructables.com/id/Measure-RPM-DIY-P...
After measurement from arduino is need to visualize, i choose oled 0,91" style its looks like more modern and its small. For the arduino i use adafruit library ssd1306 its work really charm. There is some tricky i use to prevent flickering during reading interrupt signal is using separate millis timer, one for sensor and one for showing the text. https://www.baldengineer.com/blink-without-delay-explained.html
Step 4: Schema and PCB Layout
Schematic is really simple, but i made PCB to looks more neat and compact, During make pcb layout need work together with enclosure design. so printed into paper and make model from cardboard to get the feel of size. From the top view Oled Display looks like overlap with arduino nano, in fact position of oled display is higher than arduino nano.
One Red LED need to pilot that the sonsor is reading , so i put that little red LED in the bottom of trimpot is double function in one hole .
Below the list of part
1. TCRT 5000 IR sensor
2. Trimpot 10 K
3. Resistor 3k3 and 150 Ohm
5. Display Oled 0,91
6. Arduino Nano
7. Red Led 3mm
8. Some pieces of cable
Step 5: Motor Holder
The motor holder is designed followed function. the function itself is to put the motor easily, safe and measure accurately. to consider the shape and dimension is divide to three parts like describe below
Based from TCRT 5000 Data sheet, distance IR Sensor when read the reflective object is around from1mm to 2.5 mm, so i need to design sensor holder, finally i choose distance gap more less 2 mm near the rim. (Sensor holder ) 8,5 mm - (Height sensor) 6,3 = 2,2 mm and it still inside range of sensor capabilities
Second thing need to be more attention is sensor position, after several comparison for better and faster reading sensor should be placed parallel not a cross with the rim
Parts from motor holder should contain Motor dynamo, contactor motor dynamo and rim Based from mini motor dc data sheet, height of motor dynamo is 15,1mm so i took 7,5mm deep is exactly in the middle and the form is like a make negative mold. The hole for rim should be bigger than 21.50 mm for more specific how to make rim is on the next step. last things is contactor motor dynamo i took contactor from battery holder 2302, copy and drawing the hole (for attach the pin) and put into bottom part of motor holder.
For safety reason, during measuring motor speed will give vibration and to prevent any damaged motor lid designed with slide.
This design have difficulties for "some 3D printer" (that i use) specially for sliding component, but after couple of try so i decide to use ABS filament to get result near perfect
the things and all the details of drawing parts is attached you can study to develop more better
Step 6: Box
The box part drawing by 3d modelling in the top part is to put motor holder, display and sensor adjuster. On the front or back side there is powers console. On the left and right side there is air ventilation to prevent hot temperature coming from motor when it running in long period. and this part it made by 3d print
Step 7: Assembly Tips
in the beginning i take some brass and cut it manually, result is disaster my hand not perfectly to do crafting, so i search something small as connector so i found out pieces of connector from 2302 battery holder, is perfectly curve with the shape of housing Motor dynamo.
When assembly PCB of controller should be screw to the top part of casing, but in this casing i made wrong design, hole and support is too small so it is difficult to find small screw, by the way then i use hot glue for temporary assembly
IR sensor wrap and safe with heat shrink tube to prevent short circuit when this tools vibrate
Step 8: The Rim
The rim was made with two alternative one is fit with plain shaft and other one fit with pinion (mini 4wd gear shaft). some times to take out and put again pinion is a pain and will loose the grip to the shaft so its make user easily. the last thing all surface of the rim painted in black by paint spray except little stripe 1 cm more and less for sensor read
Step 9: Supplied the Power
Motor dynamo is hungry power consumption, cannot join with power from micro control, even use motor driver chip is better make separated power for motor and for controller, means in this case i use two battery for powering motor dynamo is like actual condition when attach into car, then use 5v for micro control ( use mini usb )
Below is list of part
1. Female power socket
2. Female Mini Usb
3. Piece of PCB hole
4. Switch on off
5. Power supply 5vdc
6. Battery Holder 2XAA
Step 10: Test and Calibration
After Assembly all part electronics and enclosure, power socket.
Now going to test and calibration
First is turn on power of device, the green led from arduino will go through that translucent material
Second is make sure use Rim that have white stripe. turn 180 degree until white stripe go down facing the sensor, if red led turn on it mean sensor is reading. try to rotate the rim and make sure if the sensor facing black color red led is turn off.
In case sensor not detected try to adjust trimpot by small screwdriver. After that switch on the power of the of the motor and see measurement
Step 11: The Process
Evolution this tools is coming from many of trial and brainstorming from very small user community specially my brother as first user, the point should be reach is
1. How to get RPM precise measurement, comparing measurement result from Giri (Android App)
2. How to powering motor
3. How to hold / locked and make motor dynamo support
So far this tools already requested by hobbies (my brother and friends correctly :D)and some is produce by request , i hope anyone can build and develop too, Thanks again and Happy DIY
This is an entry in the