USER MANUAL FOR

Shared by: HC120717064020
Categories
Tags
-
Stats
views:
0
posted:
7/17/2012
language:
pages:
10
Document Sample
scope of work template
							Functional Module Report            PWM         Alexander Kloth




        PULSE WIDTH MODULATION OF DC MOTOR DRIVE UNTS




912b6e2b-ecc3-4395-97f5-c4111867c39a.doc                     1    7/17/2012
Functional Module Report                   PWM                              Alexander Kloth


INTRODUCTION



       Each of the previous modules uses constant voltage sources along with variable

resistors in order to direct the current through the circuit. By adding amplifiers and

transistors, we are able to control roughly the path of the current and its voltage at any

point. This method is called analog control. It is good for general changes in the voltage

at any point in the circuit. However, there is a problem that analog control tends to

become imprecise for small changes in voltage. In order to direct a specific amount of

voltage through the circuit, we would need a complex array of variable resistors. Digital

methods are simpler, and are able to solve this problem.



                            5V
                                                                                      DC
                                                                                     Motor



    MCU
                                                                     D
  Port PB5                                     G                     IRF530
   (OC3)


                                                                     S
                                   10k


                    0V



        Figure 1. Schematic for MCU pulse-width modulation control of DC motor



912b6e2b-ecc3-4395-97f5-c4111867c39a.doc                                                     2   7/17/2012
Functional Module Report                  PWM                             Alexander Kloth


       One of the more commonly used digital methods is pulse-width modulation

    (PWM).      The device that drives the voltage in the circuit in PWM is a

    microcontroller unit (MCU).         Specifically, the PWM method utilizes the

    microcontroller’s ability to generate square waves to produce small variations in the

    voltage of a circuit.    This module uses the square-wave trait of pulse-width

    modulation to drive a direct current motor through a MOSFET. The schematic

    appears in Figure 1. In addition to wiring the microcontroller to the circuit for use in

    PWM, we also look at using the microcontroller’s assembly language to control

    simple output from the device.




    THEORY

       Pulse-width modulation uses square waves generated by microcontrollers to

    control voltage across a circuit. Square waves alternate between a high-logic (binary

    1) level and a low logic (binary 0) level, where high logic has a positive voltage and

    low logic has zero voltage. Figure 2 is an example. Notice that, here the square wave

    alternates between 5V and 0V. Also notice that the square waves spends a value of

    time Δt on both high and low logic This time is called a delay. In order to change

    the delay time, we can input a number into a microprocessor program that will force

    the wave to remain at the high or low logic level until it switches to the opposite

    level. However, changing this delay time does not achieve what we want to achieve;

    essentially, the point of pulse width modulation is to achieve a different average

    voltage for the signal. That is to say, changing the delay time maintains the high-



912b6e2b-ecc3-4395-97f5-c4111867c39a.doc                                                  3    7/17/2012
Functional Module Report                    PWM                          Alexander Kloth


    logic voltage while keeping factors associated with lower voltages, such as lower

    torque, lower angular velocity, constant.




                                        t               t                  t
   High logic, 5V
                                        H             H                   H

                            L                   L                 L
    Low logic, 0V
                             t                  t                t

                            Figure 2. The typical square wave.




       Instead of varying the time between high-logic peaks, pulse-width modulation

    varies the ratio between high- and low-logic times per cycle. This cycle is called

    duty cycle. For the square wave, in Figure 2 the ratio of high- and low- logic is one.

    However, when the high/low logic changes, the ratio may change. What happens if

    we change this ratio? If we keep the duty cycle constant, but cut down the high logic

    to half, then the ratio of high to low logic is one-to-two. If the output voltage is a

    function of the averaging of high and low logic, it can be seen that the low-logic

    voltage has more influence on the output voltage.            This is how pulse-width

    modulation works. PWM uses a variable, the high-to-logic logic delay ratio to

    control the voltage in a circuit.




912b6e2b-ecc3-4395-97f5-c4111867c39a.doc                                                4    7/17/2012
Functional Module Report                 PWM                            Alexander Kloth


      To control the duty cycle of the square wave, we need to write a simple program

    for the microcontroller. Specifically, we want to control the output compare of the

    microcontroller, which uses the codes in Figure 3. Take a look at the program, and it

    can be seen that it is dominated by two parameters: the delay time variable, which

    takes up two memory locations, and the output compare pin selection. Section (1)

    establishes the delay time variable DT. Section (2) sets up the output compare

    function, which releases a pulse if the output compare flag (OC3F) is set Section (3)

    executes the output compare. Section (4) adds the delay variable and the output

    capture flag is cleared. When the output compare event occurs, it will cause a

    change in the high-logic time of the cycle. Here, pulse-width modulation occurs.

    The program then loops to keep running.




912b6e2b-ecc3-4395-97f5-c4111867c39a.doc                                               5    7/17/2012
Functional Module Report                  PWM                                Alexander Kloth


 #INCLUDE ‘A:\ VA R_DEF.ASM ’                                set delay tiembalue;at $000, theduty cycle
                                                             ratio is maximized due to low delay, while at
          ORG    DATA
 DT       RM B   2                                           $ffff theduty ratio is minimized due to high
                                                             delay.(1)
       ORG   PROGRAM
 START LDX   #REGBAS
       LDAA #%00010000                                     initialize s timer, output comparevalues. (2)
       STAA TCTL1,X
       LDD   DT
       ADDD TCNT,X
       STD TOC3,X

 LBL1     LDAA TFLG1,X                                                      (Port A)
                                                             output on OC3 (port PB5) (3)
          ANDA #%00100000
          BEQ  LBL1
                                                           adds delay toduty cycle, controlling
          LDAA   #%00100000
          STAA   TFLG1,X                                   the output from PB5 (4)
          LDD    DT
          ADDD   TCNT,X
          STD    TOC3,X
          BRA    LBL1

          ORG    RESET
          FDB    START



           Figure 3. M68HC11 Assembler program for output compare on PB5




      In the microcontroller lab, we use a Motorola M68HC11 microcontroller, which

outputs a signal through the port A pins. You will use a program similar to the one in

Figure 3, with varying values at the memory location of DT. The program in Figure 3

outputs to port PA5, the port assigned to output capture port OC3 on the MCU (see

Kheir). This output through port PA5 will be used to control the direct current motor.

Figure (4) contains a labeled picture of the functional module.




912b6e2b-ecc3-4395-97f5-c4111867c39a.doc                                                         6         7/17/2012
Functional Module Report                     PWM                               Alexander Kloth


      ASSEMBLY INSTRUCTIONS

   1. Insert IRF530 into breadboard, with the black face towards you. According to the

         schematic for the transistor, the gate should be the left prong, the source should be

         the middle prong, and the drain should be the right prong.

   2. Attach a black wire from the source of the transistor to the 10 kilo-ohm resistor.

         This resistor should then lead back to the gate of the transistor.

   3. Attach a signal wire from the gate of the transistor. When it comes time to test

         the circuit, the other end of this signal wire should be plugged into PB5 (three bits

         from the most significant bit).

   4. Attach a diode from the drain of the transistor to another point on the breadboard.

         Attach a red wire from this end of the diode to the 5V source

   5. Attach the black (ground) lead of the direct current motor to the drain of the

         transistor.

   6. Attach the red lead of the direct current motor to the 5V source.




                         Table 1. Wiring instructions for PWM circuit

Yellow                                           Signal wire from MCU PB5 to gate of IRF530

Black                                            Ground (0 V)

                                                 Ground to 10 k-ohm resistor

Red                                              Input voltage (5 V)

Other                                            Diode from drain of IRF530 to black lead of

                                                 motor




912b6e2b-ecc3-4395-97f5-c4111867c39a.doc                                                      7   7/17/2012
Functional Module Report              PWM                              Alexander Kloth

                                          Red lead of motor to 5V

                                          10 k-ohm resistor to gate of IRF530




                   Figure 4     Labeled picture of the PWM circuit




    LIST OF PARTS

      1 IRF530 MOSFET transistor

      1 10 kilo-ohm resistor

      1 diode



912b6e2b-ecc3-4395-97f5-c4111867c39a.doc                                            8    7/17/2012
Functional Module Report                   PWM                        Alexander Kloth


      1 Motorola M68HC11 microprocessor unit

      1 direct current motor with leads


    APPARATUS

      1 breadboard

      Wire

      Digital multimeter


    EXPERIMENTAL PROCEDURE

   1. Connect the yellow signal wire from the pulse width modulation module to port

       PB5 on the EVB. This port is the third pin from the most significant bit (MSB)

       end.

   2. Connect the ground wire to the 0V source and the red wire to the 5V source.

   3. Open the MiniIDE program from the Desktop. Connect to the microcontroller

       and push the reset button on the EVB. Compile your program in MiniIDE.

   4. Type LOAD T in the command window. Click the download icon on the toolbar

       and then open the *.S19 file generated by compiling your program.

   5. Set the value of the delay time by changing the values in its two consecutive

       memory locations.     First, modify the memory by entering MM 0000 in the

       command window and hit the ENTER key. On the next line, enter the first two

       bits of your delay time value and hit ENTER again. (Be sure this value is

       hexadecimal!) Then, type MM 0001, and enter the second two bits of the delay

       time value.




912b6e2b-ecc3-4395-97f5-c4111867c39a.doc                                            9   7/17/2012
Functional Module Report               PWM                       Alexander Kloth


   6. Type G D000 into the command window. Your program should begin to run, and

      the DC motor should begin to turn.

   7. Press RESET to stop the program.         Disconnect your circuit from the

      microprocessor and close MiniIDE.


    REFERENCES

    HISTAND, MICHAEL B. AND DAVID G. ALCIATORE. (2002) Introduction to

          Mechatronics and Measurement Systems. 322-26.

    KHEIR, MICHAEL.        (1997)   The M68HC11 Microcontroller: Applications in

          Control, Instrumentation, and Communication. 17.




912b6e2b-ecc3-4395-97f5-c4111867c39a.doc                                     10    7/17/2012

						
Related docs
Other docs by HC120717064020
No Slide Title
Views: 0  |  Downloads: 0
Invoice with VAT tax
Views: 4  |  Downloads: 0
Project Plan: Progress (sb Complete)
Views: 1  |  Downloads: 0
NAPA Valley Cardiovascular Health Institute
Views: 0  |  Downloads: 0
Newsletter Feb 2010 Text
Views: 8  |  Downloads: 0
Tournament Entry 2012
Views: 1  |  Downloads: 0
Question(s) of the Week - Download as DOC
Views: 0  |  Downloads: 0