This manual will detail the design, simulation, construction and testing of dc-dc converter and control system controller for dc motor switching mode. The converter will then be used for digital control of the load shunt DC motor. The circuit will be developed and tested at different stages. The first phase will build a converter that works at 40 v. This is done to ensure that they do not have parasitic inductance from wires and other circuit components that damage the driver at high voltages. In the second phase, the converter will run the motor at a voltage of 400 V at a maximum load. The last stage is to use arduino to control the pwm wave to adjust the voltage and control the speed of the motor with variable load. Components are not always cheap, so try to build the system as cheaply as possible. The final result of this utility will be to build a dc- DC converter and control system controller, the motor speed is controlled within 1% at the steady state setting point, and the speed is set within 2 s under variable load. My existing motor has the following specifications. Motor specification: Armature: 380 Vdc, 3. 6 AExcitation (Shunt): 380 Vdc, 0. Speed: 1500 r/minPower: about 1. 1 kWDC motor power supply = 380 VOptocoupler and driver power supply = 21 VThis means that the maximum current and voltage ratings of the components connected to or controlled to the motor will have a higher or equivalent rating. The dry wheel diode marked as D1 in the circuit diagram is used to provide a flow path to the reverse back potential of the motor to prevent the current from reversing and damaging the assembly when the power is turned off- The motor is still turning (generator mode). The rated maximum reverse voltage is 600 V and the maximum forward DC current is 15. Therefore, it can be assumed that the flywheel diode will be able to work at sufficient voltage and current levels for this task. The IGBT is used to switch the power supply to the motor by receiving a 5 v pwm signal from the Arduino through the optical coupler and the IGBT driver to switch a very large 380 V motor supply voltage. The maximum continuous collector current of the IGBT used is 4. 5A at a junction temperature of 100 °c The maximum emitter voltage is 600 V. Therefore, it can be assumed that the flywheel diode can work at sufficient voltage and current levels for practical application. It is important to add the radiator to the IGBT, preferably a large radiator. The fast switch MOSFET can be used without IGBTs. The gate threshold voltage of the IGBT is between 3. 75 V and 5. 75 V and drive are required to provide this voltage. The circuit operates at a frequency of 10 kHz, so the switching time of the IGBT needs to be faster than 100 us, that is, the time of one full wave. The switching time of the IGBT is 15ns, which is enough. The switching time of the selected TC4421 driver is at least 3000 times that of the PWM wave. This ensures that the driver is able to switch fast enough for circuit operation. The driver is required to provide more current than the Arduino can provide. The driver gets the current needed to operate the IGBT from the power supply, not from the Arduino. This is to protect the Arduino because the power failure will overheat the Arduino, the smoke will come out and the Arduino will be destroyed ( Tried and tested). The driver will be isolated from the micro-controller that provides PWM waves by using the optical coupler. The photoelectric coupler completely isolate the Arduino, which is the most important and valuable part of the circuit. For motors with different parameters, it is only necessary to change the IGBT to an IGBT with similar properties to the motor, which can handle the required reverse voltage and continuous collection current. The WIMA capacitor is used together with the electrolytic capacitor on the motor power supply. This stores the charge of the stable power supply, and most importantly helps to eliminate the inductance of the cables and connectors in the system. In order to minimize the distance between components, unnecessary inductance for circuit layout is listed Especially in the loop between the IGBT driver and the IGBT. Attempts are made to eliminate noise and ringing from the ground between Arduino, optical coupler, driver and IGBT. The assembly is welded on the Veroboard. An easy way to build a circuit is to draw the components of the circuit diagram on the veroboard before starting welding. Welding in well ventilated areas. Use the conductive path of the file Scrath to create a gap between components that should not be connected. With DIP packaging, components can be replaced easily. This helps without the need to weld components and resolve replacement parts when they fail. I used banana plugs ( Socket in black and red) To easily connect my power supply to the veroboard, it is possible to skip this and the wire is welded directly to the board. By including the Arduino pwm Library ( Attached as a ZIP file). A pi controller of Proportional Integral controller Used to control the speed of the rotor. The ratio and integral gain can be calculated or estimated before sufficient settling time and overshooting can be obtained. The PI controller is implemented simultaneously with Arduino ()loop. The tachometer measures the speed of the rotor. Use analogRead to input the arduino\'s measurements into one of the analog inputs. The error is calculated by subtracting the current rotor speed from the set point rotor speed and set to equal the error. Time integration is done by adding the sample time to each loop and setting it to equal time, thus increasing with each iteration of the loop. The duty cycle range that Arduino can output is from 0 to 255. Use pwmWrite in the PWM library to calculate the duty cycle and output it to the selected digital output PWM pin. Implementation double error of PI controller = ref-rpm; Time = time 20e-6; Double pwm = initial kp * error ki * time * error; Implementation of PWMdouble sensor = analogRead (A1); pwmWrite(3, pwm-255); You can see the complete project code in ArduinoCode. rar file. The code in the file is adjusted to reverse the driver. The reverse drive has the following effect on the circuit duty cycle, which means new_dutycycle = 255-dutycycle. For non-inverted drives, this can be changed by reversing the above equation. Finally, the circuit was tested and measured to determine whether the desired results were achieved. The controller is set to two different speeds and uploaded to the arduino. The power is on. The motor quickly accelerates faster than expected and then stabilizes at selected speeds. The technology of this control motor is very effective and can work on all DC motors.