Home Products Shop Articles Applications Learning Zone Downloads About Us

  • Up

  • Motor Slave

    The Motor Slave provides both speed and direction control for two independent DC motors with provisions for the connection of range limit switches. With a Master Controller already connected to the PC this slave module can be up to a massive 1Km away connected only by a single pair of low cost wires.

    General:    To operate correctly the Motor Slave needs to be supplied with an operating DC voltage of between 6v and 12v. This should be connected to the terminals labelled 6v (+ and -) on TL2. The power supply should be fully regulated and capable of providing at least 100mA. The Board also needs to be connected to a Master Controller using the two wires on TL1 (A and B). Connecting ‘A’ to ‘A’ and ‘B’ to ‘B’. Alternatively it can be connected to any other slave module which is already connected to the Master using the same connection strategy. Use of the SCN connection is optional but where used it should be connected to the metal foil shielding on a twisted pair cable. An additional DC supply needs to be connected to the terminals labelled VM+ and GND. This supply should be chosen according to the specifications of the motors used. It can be any voltage between 6v and 36v DC. The maximum current controlled via the Motor Slave outputs is 6A. This high current capability allows a wide range of DC motors with “useful” torque to be used for an equally wide range of applications.

    Board Numbering:    One last task is required before the Motor Slave can take part in the main control system and that is to allocate it a board number. It is necessary to allocate each board a unique “Board Number” so that commands and data from the Master Controller can be directed at the correct slave board. This is done by setting the blue DIL switches on the board labelled “Board Number”

    Outputs:   The Motor Slave has four outputs for driving two motors independently. The output terminals are labelled as 1A and 1B for motor 1 and 2A and 2B for motor 2. When the motor is set to drive in the forward direction terminal ‘A’ is positive with respect to ‘B’ and vice-versa when set to go in reverse.

    As well as direction control the motor outputs control the speed of the attached motor by using PWM (pulse width modulation) to deliver a variable power based on the external motor supply. i.e. the voltage it produces is always exactly equal to the voltage applied to the motor supply terminals (VM+ and GND) but it is constantly turned on and off at a high rate. The power transferred to the motor (and hence the resulting speed) is varied by changing the amount of time the output spends ‘ON’. i.e. if the output is only on for 5ms out of every 100ms then the resulting speed would be about 5% of full speed. If it is on for 50ms out of every 100ms then you would have approx half full speed.

    The speed can be varied over the full range from less than 1% to more than 99% in 255 pre-defined steps. This gives very fine control over the speed of the motor. Remember that it is the power being delivered to the motor which is being varied which in turn causes a speed change. If the motor is turning a heavy load then the speed will be proportionally less for the same power output. Each motor output is capable of delivering up to, a very substantial, 6 Amps to the connected motor. This allows the use of some large and powerful motors with the motor slave.

    Inputs:   There are 8 digital inputs on a Motor Slave. The characteristics of these inputs are identical to those of the Digital I/O Slave already described in a previous section and will not be elaborated on here. However only 4 of these are available for general use. The four inputs labelled as X1, X2, X3 and X4 are available to be read by the controlling program at any time.

    The inputs labelled as 1F, 1R, 2F and 2R can also be read in the same way as X1-X4 but they also have an automatic function in the control of the motors. They are designed to act as range limits. A range limit is a mechanism to prevent a moving object moving beyond its safe operating range. For example, the motor you are controlling may be moving a drill on an X/Y drilling table along the X axis. At some point it will reach the end of its available travel and, without limits, presumably hit an end stop. If the motor continues to operate in this condition it will probably overheat and may even have enough power to damage the mechanism it is moving. To prevent this, a limit switch may be fitted near the end of travel in such a way that it is closed when reached by the moving part. The closure of this switch is used to switch off the motor automatically. However, it would be impractical to just leave the motor “dead” against the end stop with no possibility of reversing it back into the working range, so the automatic stop must only stop the forward motion. When the signal is, at some point, changed to reverse, the motor must then be allowed to reverse back from the end stop. Similarly at the other end of travel, the reverse must be inhibited automatically when the other limit switch is reached but forward motion would then be allowed. This is the function of the inputs 1F and 1R. When 1F is connected to ground it inhibits forward motion of the motor immediately and automatically without any intervention by the controlling program. Reverse would still be allowed. Similarly 1R inhibits reverse motion but allows forward when connected to ground. 2F and 2R are the corresponding limits for motor 2.

    This makes the fitting of range limit switches very easy for both motors. It is not necessary to use these inputs if not required. They can simply be left unconnected for free operation in both directions since they have “pull up” resistors ensuring that they float to +5v. Since the limit switch inputs can be read like any other input it can be determined whether or not the moving device has operated any of the limit switches from within the control program allowing suitable remedial action to be taken if required.

    The range limit inputs can also be used for a different purpose. They can be used as a datum point for subsequent motion. In other words the motor could deliberately be driven until the moving object reaches the limit switch which is set at a known location. This can then be used to “zero” a counter or external distance encoding device prior to subsequent movement in the opposite direction. This would give a repeatable “datum” point for more accurate position control.


    Compatible with Windows XP, Vista, 7, 8 and 10
        To download a copy of the user manual for this board, right click on the link on the right and choose "save target as". This will allow you to download a PDF copy of the manual

        You will need Adobe Reader installed on your PC to read this document. Adobe reader is available for free download from Adobe using the link to the right..

    ****    Click here for current price and stock status   ****



    Lowest Cost
    Control Board

    Control by Text

    Security Camera:
    A new article
    by Brian M

    Microscope Control:
    A new article
    by Harald K. A.

     Use our boards with
    Raspberry Pi.

    A new article
    by Ava L (UK)