586,108 active members*
3,196 visitors online*
Register for free
Login
Results 1 to 8 of 8
  1. #1
    Join Date
    Sep 2006
    Posts
    32

    USB Modbus I/O Using PIC

    Hi everyone,

    A little while back I retrofitted my Boxford 125 TCL lathe to convert it from requiring a BBC Micro to using a PC with Mach 3. I used a parallel breakout board from CNC4PC and a processor board of my own design that uses a PIC to interface to the front-panel of the lathe as well as the spindle control with the PC using Modbus over USB.

    I wrote up some of the details on my website at http://www.fieldofcows.com/blog. Since then I've had a number of enquiries about the Modbus part of the project and people requesting the firmware source code.

    I've finally got around to tidying up the source code to the point where I'm happy for people to download and use it. I've also started a project to build a standalone USB Modbus I/O board. Although I haven't yet built it (I hope to in the next couple of weeks) I believe it should work correctly. The circuit and firmware both work under simulation in Proteus.

    The interface uses a PIC 18F4550 which has on-chip support for USB. I've used the Microchip USB stack to create a USB CDC serial port device for the Modbus comms. The firmware supports both RTU and ASCII protocols (selectable at compile time). The source code is written in C and is compiled using the Microchip C for PIC18 compiler.

    If anyone is interested in taking a look or building one then have a look at my webpage at http://www.fieldofcows.com/index.php...dbus_Interface. I'd be very interested in your comments, fixes and suggestions for improvements.

    Please be aware that I'm not an electronics engineer so the circuit may be flawed in ways I don't understand. I am a software engineer though so the firmware should be perfect .

  2. #2
    Join Date
    Dec 2006
    Posts
    19
    Hello,
    looks as an interesting project for me.
    What do you do with the analogue inputs and outputs? In the moment I have no idea to use it together with a cnc and Mach3?

    Thanks
    LazyBee

  3. #3
    Join Date
    Dec 2004
    Posts
    1865

    Nice little gadget.

    Hi rdhopkins,

    If it works like you describe it will be a nice addition of things you can use to get more I/O past the pport in Mach3.


    Hi Lazybee,
    The analog input can be used to control spindle speed override or feed rate override.
    The analog output is as he says is used for the spindle speed control.

    This would most likely have to be used with the serial Modbus option in Mach3. You would first need to activate serial Modbus on the first page of ports and pins.
    Most of the connection of the I/O to operation in Mach3 is done thru the use of brains.

    Take a look at the Modbus video on the mach3 support site to get a feel of what is required.

    Mike
    Warning: DIY CNC may cause extreme hair loss due to you pulling your hair out.

  4. #4
    Join Date
    Sep 2006
    Posts
    32
    Hi LazyBee,

    I put a couple of analogue inputs and a single analogue output on the board to fit my purposes, as TOTALLYRC states I have a feed rate override knob that I will connect to one analogue input. The other is unused. The analogue output connects directly to the speed controller on my lathe to control the spindle speed.

    It would be extremely easy to use any of the facilities provided by the PIC and interface to them over Modbus. I tried to write the firmware to make it easy to modify and extend. You could use all the I/O as digital inputs or all as outputs for example if that is what you need.

    Once plugged into the PC it is very easy to get it talking to Mach 3. I did have some problems with a previous version of the firmware where it would timeout on a message every so often but I think I have fixed thats so it should be quite reliable. Although I will have to build the board and try it out before I can promise anything!

    Roy

  5. #5
    Join Date
    Dec 2006
    Posts
    19
    Hello Roy,
    thank you for your comments.


    LazyBee

  6. #6
    Join Date
    Apr 2003
    Posts
    302

    mapping memory from foc modbus to mach3

    I can't seem to find a way to connect your code to mach3. The com port is created when I plug in the pcb and communications is established, even through mach3 as tested in the serial modbus config screen. When I try to read or write data I get timeout errors. I
    must be pointing to the wrong addresses. I have tried random numbers along with the one I thought would work, F081 (61569), since this is the address for portb.

  7. #7
    Join Date
    Jan 2012
    Posts
    0

    There is a way :)

    Hi,
    I have useed this setup with Mach3 for 2 mounth now.
    It's working very nice and the setup is easy to do.

    I will try to remeber to make a writeup on the settings for the serial modbus in Mach3 when I get back home from work. (This weekend i hope )

    If some one is interested, if I do forget just make a note here and i think there will be a mail sent to me..

    regards,
    Niklas

    "edit" Oupps... sorry, old thread..

  8. #8
    Join Date
    Feb 2007
    Posts
    966
    Quote Originally Posted by Rdhopkins
    Please be aware that I'm not an electronics engineer so the circuit may be flawed in ways I don't understand. I am a software engineer though so the firmware should be perfect .
    Nice clean program !. I like the way you write code.

    I much prefer that way over separate C and header files for every little thing.

Similar Threads

  1. Modbus to run GS-2 drive?
    By mecheng10 in forum Mach Mill
    Replies: 14
    Last Post: 06-17-2012, 07:01 PM
  2. Mach3 with Hitachi VFD using Modbus
    By swinn in forum Mach Software (ArtSoft software)
    Replies: 2
    Last Post: 11-28-2008, 07:44 PM
  3. reading modbus inputs
    By howling60 in forum Mach Software (ArtSoft software)
    Replies: 1
    Last Post: 04-17-2007, 01:41 PM
  4. EMC2/Modbus......HELP!
    By pauldkeeton in forum LinuxCNC (formerly EMC2)
    Replies: 5
    Last Post: 02-18-2007, 11:47 PM
  5. modbus device
    By Drew in forum Machines running Mach Software
    Replies: 14
    Last Post: 02-11-2007, 08:59 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •