Bi-Polar Motor Controller and Distributed Temperature Sensors

For an experiment I needed to motorize a linear stage and also monitor the temperature throughout the lab. Instead of doing the easy thing and purchasing pre-built sensors and controllers, I decided that it would be fun to build my own.

The project consists of a main controller board, and several distributed smaller temperature sensor boards. The controller board is driven by a PIC18F2321 micro-controller. It interfaces with a bi-polar motor controller chip, Allegro A4982. By sending the motor controller a simple pulse, it moves a stepper motor between 1/16 and 1 full steps, depending on the configuration. It also talks to the distributed temperature sensors via I2C. While I2C is typically for interchip communication on a simple circuit board, by slowing the clock down sufficiently, the chips can actually be quite a ways apart, with the limiting length being effected by the inductive/capacitive effect of the cables.

The controller then sends the gathered temperature data to the host computer via RS-232. Unfortunately, the computer I am interfacing with runs Windows 98, so a USB implementation would be much more complicated than if a more recent operating system were in use.

If you are interested in more information or the schematics and board layouts, leave a comment and let me know.


5 thoughts on “Bi-Polar Motor Controller and Distributed Temperature Sensors

  1. Pingback: DorkbotPDX PCB Order Review | Square Penguin

  2. Hi Jason,

    I am also trying to get a stepper driven by the A4982 chip but currently I am not successful at getting the chip to output correctly. I may not have calculated the values for the external components correctly. Would it be possible to take a look at your schematic for reference?



    • My design was based off of the reference design in the A4982 datasheet. I haven’t populated my board yet, so I’m not sure if my boards work.

      • I am also using this chip, and it’s not working. Have you populated your board yet? What were your results?

        Thank you.

        • Nathan,

          I ended up not needing the motor controller after all. I am left with an unpopulated PCB and all of the components to put it together. If I do ever put it together, I will let you know.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">