DC motor speed controller
I will introduce the constant speed controller for DC motor. It detects and controls the rotational speed of the motor. When lower than the specification speed, it increases a control electric current. When higher than the specification speed, it reduces a control electric current. It is possible to use when wanting to keep constant speed even if the load to the motor changes. With the circuit this time, I used a motor for the speed detection apart from the main unit motor. The speed can be detected in the other way, too. LEDs are lit up to confirm the control situation of the motor. A circuit like "Light controller" is used for the control unit of this circuit.
Hardware Circuit drawing Pattern drawing Circuit explanation Parts explanation
Software Flow chart List Processing explanation Assembly Adjustment
for DC motor speed controller
Control voltage input circuit
This is the circuit which inputs the control voltage which was created by the turning of the motor in PIC. The input voltage to PIC is converted by A/D converter. Changed voltage is used for the PWM function of the CCP to control the motor drive. At the circuit this time, a small motor is used as the generator to detect the number of rotations of the motor. The input voltage (the control voltage) to PIC is changed by the fluctuation of the number of rotations of the motor. The other way can be used to detect the number of rotations of the motor. It is need to change control voltage to proportional to the number of rotations of the motor. PIC controls the drive electric current of the motor for the control voltage to become a regulation value. When the revolution of the motor slows down, i.e. control voltage goes down, the drive electric current of the motor is increased and number of rotations is raised. When the control voltage reaches a regulation value, an drive electric current at the point is held. Oppositely, when the number of rotations of the motor is high, i.e. the control voltage is high, the drive electric current of the motor is reduced and number of rotations is lowered. When the control voltage reaches a regulation value, an drive electric current at the point is held. DB1 is used to make not conscious of the polarity of the motor. When never making a mistake in the connection, to use isn't necessary. When the voltage of the motor for the speed detection is small, it is better not to put. D1 is used to protect PIC when the voltage of the detection motor is high. C1 is to make bypass the noise of the detection motor. VR1 is the variable resistor to set the number of rotations of the main motor. The input voltage of PIC becomes low when bringing VR1 close to the side 1 and PIC increases the drive electric current of the motor. That is, the revolution of the motor rises. The input voltage of PIC becomes high when bringing VR1 close to the side 3 and PIC reduces the drive electric current of the motor. That is, the revolution of the motor slows down. For the details of the CCP, refer to "CCP feature of PIC16F873".
Motor drive circuit
The PWM(Pulse Width Modulation) function of PIC is used for the electric current control to drive a motor.PWM can change the duty of the pulse to output into CCP1 by the data. When the time which is made the H level of the pulse of CCP1 is short, the time of ON (the L level) becomes long in TR2. That is, the drive electric current of the motor increases. Oppositely, when the H level time of the pulse of CCP1 is long, the ON time of TR2 becomes short and the drive electric current of the motor decreases. The duty of the pulse of CCP1 is controlled in the voltage (the control voltage) which was taken in with the control voltage input circuit. When the control voltage is higher than the regulation value, the H level time of the CCP1 pulse is made long and the number of rotations of the motor is lowered. When the control voltage is lower than the regulation value, the H level time of the CCP1 pulse is made short and the number of rotations of the motor is raised. I used N-channel MOS FET for the drive of the motor. The P-channel MOS FET can be used, too. In the case, the duty control of the CCP1 pulse becomes opposite. It becomes low-speed when the H level of the pulse is short and when long, it becomes high-speed. The way of connecting between the motor and the FET becomes opposite. In this case, the power of the transistor for the FET drive should be connected with the
source terminal of P-FET.
Because the output of the motor which was used this time is big, there is a gravity that the motor for the speed detection breaks. Therefore, an electric current is suppressed by the resistor to have put in series. For the details of MOS FET, refer to "MOS FET". For the details of the CCP, refer to "CCP feature of PIC16F873".
Clock generator circuit
I am using 10-MHz resonator. There is not directly relation but it is related with the taking-in period with control voltage, the period of the motor driving pulse to the number of rotations of the motor.
LED displaying circuit
LEDs are made to light up to monitor the drive situation of the motor. 3 bits of higher ranks of the control data of PWM are used for the lighting-up of LEDs. In the condition that a motor isn't driven, all LEDs are turned off. The number of the lighting-up is increased in the order from LED1 as the drive electric current increases. When the motor is in the maximum drive condition, all LEDs become a lighting-up condition. At the equipment this time, the LED of the bar type with seven LEDs is used. The circuit can control eight LEDs. However, at the equipment this time, LED1 isn't used and seven LEDs from LED2 to LED8 are used. An LED is lit up when RBx is H level.
Power supply circuit
3 terminal regulator is used to get the operating voltage for PIC. The about 70-mA electric current flows when seven LEDs are lit up at the same time. I used a 1 A-type regulator for the safety.
for DC motor speed controller
In the circuit this time, PIC16F873 is used. At the circuit this time, the control of the drive electric current of the motor is done using the PWM function of the CCP. The voltage according to the number of rotations of the motor is taken in to the analog-to-digital converter and has the control of the drive electric current. This time, it is using a motor for the speed detection. Also, LEDs for the monitor are lit up to know the situation of the motor drive. Data sheet for PIC16F873
3 terminal regulator ( 7805 )
This regulator is used to make the stable power of +5 V. Eight LEDs for the monitor sometimes light up at the same time.(This time, it is seven) So, when using a 100 mA-type regulator, little leeway occurs. This time, a 1A type is used for the safety.
Transistor for MOS FET drive ( 2SC1815 )
This transistor is used to drive MOS FET by the output of PIC. It is converting the output of PIC (0V to 5V) into the voltage to control an FET (0V to 12V). Data sheet for 2SC1815
Power MOS FET ( 2SK3142 )
This is N channel MOS FET. The maximum drain current is 60A. When the FET is in the ON condition, the resistance between drain and source is 4 milli-ohm. So, the electric power loss when the 10-A electric current flows in the ON condition is 0.4 W. The circuit this time doesn't have to use an FET with such big capacity. It is because I don't have an FET with appropriate capacity.
Zener diode ( RD5A )
The voltage which is applied to the terminal of PIC is a maximum of +5V. This diode prevents the destruction of PIC when the speed detection voltage of the motor exceeds 5V. When more than +5V voltage be applied never from outside, it is unnecessary.
Diode bridge for speed detection voltage polarity protection ( W02G )
I put the silicon diode bridge not to be in the problem even if it connected the pole of the motor for the speed detection oppositely. When never making a mistake in the connection, it is unnecessary.
PIC16F873 is 28 pins of the slim type. When you can not get a slim-type 28 pin socket, two sockets of 14 pins can be used. In the circuit this time, I used two 14 pin sockets.
I used 10-MHz resonator. When changing the frequency of resonator, the value with all kinds on the software must be changed.
Variable resistor for motor speed setting
I used B type. At the circuit this time, terminal numbers are used like the figure on the left. It becomes low-speed when turning to the left and it becomes high-speed when turning to the right. There is a circuit which is using oppositely in the position of the No.1 terminal and the position of the No.3 terminal. The one is general.
It is to be OK at 1/8 W.
Multilayer ceramic capacitor
These capacitors are used to bypass the high frequency noise of the input and output of the power supply.
This is an universal printed board with 15 x 25 halls.
Connector for LEDs and variable resistor for motor speed setting
At first, I planned to use connectors to install LEDs and a variable resistor for the motor speed setting at the lid of the case. However, because it isn't possible to house in the case, I decide to use wiring terminals.
This terminal is used to connect a power supply wire and load.
This is used as the leg of the printed board.
This is the motor which drives with the circuit this time. I use RS-380PH made by MABUCHI MOTOR Inc. in Japan. The specification of this motor is shown below. Voltage Range: 12V Speed at Normal Load: 14,200rpm Normal Voltage: 7.2V Current at Normal Load: 2.90A Normal Load: 100g·cm Speed at No Load: 16,400rpm Shaft Diameter: 2.30mm
Motor for speed detection
At the circuit this time, speed detection of the main motor is done with the motor for the detection. I use RE280 made by MABUCHI MOTOR Inc. in Japan. The specification of this motor is shown below. Voltage Range: 1.5V - 4.5V Speed at Normal Load: 6,850rpm Normal Voltage: 3.0V Current at Normal Load: 750mA Normal Load: 17.7g·cm Shaft Diameter: 2.0mm Speed at No Load: 9,000rpm When making turn at the speed which is the same as the main motor, it exceeds above-mentioned specification. The generated voltage exceeds a specification but I think that there is no problem because the electric current flows hardly. Strictly, there is a problem of the insulation because it becomes above the specification voltage. However, I seem not to be in the hinderance because it is not high voltage.
Motor installing metal fittings
The motor is a cylinder and a screw for the motor fixation is put to the front. When installing a motor on the panel and so on, you can use these holes. This time, I used the installing metal fittings of the type which inserts a motor.
These gears are used for the connection between the main motor and the motor for the speed detection. This time, because it is for the operation confirmation of the speed control of the motor, the main motor is turning only a motor for the speed detection.
LEDs for motor drive situation displaying ( GL-107S12 )
This is the LED for the bar graph displaying which seven LEDs were incorporated into. The control circuit can control eight LEDs. Because the indicator with eight LEDs could not be gotten, I decided to use the indicator which had seven LEDs. However, when using as the level meter, the needed LED is seven.
Motor connection terminal
This is the terminal which connects a main motor and a speed detection motor.
Power supply connector
This is the connector to connect a power.
At first, I planned to share the power of the main motor. However, the power of the motor separated from the control unit because it depended on the kind of the motor. This adapter is for the control unit.
Knob for speed setting
This is the knob to turn a variable resistor for the speed control.
I used the case which is made from metal for MOS-FET for the motor drive. In case of the motor which drives this time, the consumption electric power in MOS-FET for the drive is little. So, I think that it is OK even if it puts or it doesn't put a small heat sink depending on the size of the drive electric current. I used TC-4 which is made by the TEISHIN electronics Inc. in Japan. It is made from aluminum with 75mm width, 95mm depth, 20mm height.
I made a panel to display the name of the power connector and the motor connection terminal. I printed a panel to the OHP sheet. Then, I put white paper behind the OHP sheet for the character to be able to be well seen.
I put a name plate as the ornament.
This is the leg to put to the case which was made of rubber. This leg is the attachment of the case.
I put a terminal cover to the drain terminal (center) of the FET. It is to prevent from touch with the terminal next.
Assembly for DC motor speed controller
Installation of LED bar
An LED bar is mounted on the lid of the case. First, it makes a rectangular hole to mount the displaying part of the LED on the case. The case which I used is made from aluminum. Therefore, I adjust the size of the hole using the jigsaw and the files. An LED bar is protected with the transparent acrylic panel with the thickness of 0.5 mm. Screws are used for the fixation of the acrylic panel and the LED bar.
Open the holes
The holes are made which install a motor connection terminal, a variable resistor for the motor speed setting and a power suupply connector on the side of the case. Also, the holes are opened which installs control unit and an FET at the bottom. These holes are made while the size of the parts are measured. The confirmation is needed that the variable resistor and the power suupply connector don't touch to the control unit.
Installation and wiring for motor connection terminal and FET
The back panel is installed with the motor connection terminal. Because the place of the wiring is narrow, wiring to a terminal and an FET is done before installing of control unit. A terminal cover is put to the central terminal (the drain) of the FET. It is to prevent from touch among the terminals.
Installation and wiring for variable resistor and power suupply connector
The back panel is installed with these parts. I removed the stopper of the variable resistor used the needle plier. A knob is installed so as not touch with the screw part of the variable resistor. When the axis of variable resistor is long, it makes short. Because the wiring part of these parts is narrow too, wiring to the terminals are done before installing control unit.
Installation and wiring for control unit
Control unit is installed after all wiring is ended to the parts which were installed on the side of the case. Wiring is done in the order from the difficult place. I wired from the grounding wire and the power supply wire. It is because those wires are thick. Next, FET gate wire Variable resistor wire Control voltage wire. The FET has the possibility to generate heat. Therefore, need an attention to wire doesn't touch with the FET.
Installation of name plate
I installed a name plate on the lid. An attention is needed so as not for the installing screw to do touch with the control unit.
Wiring for LED bar
Wiring with the LED bar to have put to the lid is done. Because there are many numbers of the wires, it pays attention so as not to make a mistake. I wired in order of 8 7 6 5 4 3 2 GL. As for the length of the wiring, it considers a situation which opened a lid. To prevent the touch of the wiring with the FET when closing a lid, wiring is put under the control unit.
Installation of rubber legs
The equipment is complete when installing rubber legs at the bottom.