Questions about DF-1 protocol

Stephen Luft

Lifetime Supporting Member
Join Date
May 2002
Location
South Portland, ME
Posts
671
Hey all,

We have a customer who will be using our controllers as part of a remote inventory picking system. The controllers communicate through aerocomm wireless modems. Our controllers will be interfaced to the clients of the wireless communications. There are two controllers for this remote system...one for the X coordinates, one for the Y coordinates.

The server is attached to an Allen Bradley with a DF-1 protocol. I believe it is a Micrologix

My questions are:

1. Can the DF-1 protocol interface with either ASCII or ModBus?

2. Does AB offer Modbus interface for the Micrologix?

3. If the answer is no to the above, what other options are there?

ModBus and ASCII are the protocols we support.

To all who respond, thanks for sharing your knowledge.

God Bless,
 
Depending on your Micrologics model and revision you should be able to do either.

I think you need to get to at least a Micrologix 1200 Series B before ASCII and MODBUS RTU are supported. But you can configure the channel as either.

You will be using the only prot on the plc form this function, however. So you will effectively give up you ability to monitor or program it. I believe there is a way to switch between user and system mode on the prot but I have never done that.

Keith
 
The DF-1 protocol uses ASCII characters, and I believe it is published by Allen Bradley. It is not exactly public domain, butI don't believe there are royalties associated with it like there are for DH+.

Many A-B products support Modbus RTU, including some of the newer MicroLogix models. Some of the older ones don't, and I suggest you go to the A-B website for particulars on the models your customer is using. http://www.ab.com/

We have interfaced a number of different automation products with Modbus RTU to DF-1 protocol PLCs using the PRoSoft products. I suggest you look at them as an option. http://www.prosoft-technology.com/
 
Hi Stephen,

Seeing as others have answered your questions I'd like to suggest that you look into supporting DF1. There are ActiveX and OPC servers available to make this easy. If your ML supports Modbus then you'll be OK but if you want to interface to an A-B controller that doesn't support Modbus then you'll probably spend less engineering time integrating and ActiveX or OPC solution than writing the ASCII ladder code in the ML. Finally, once you support DF1 then you won't have to worry about future A-B/DF1 installations.

Good Luck,

(8{)} ( .)

(Yosi)
 
(8{)} ( .) said:
Hi Stephen,

Seeing as others have answered your questions I'd like to suggest that you look into supporting DF1. There are ActiveX and OPC servers available to make this easy.
(Yosi)

A small PLC such as Entertron will not be able to use a OPC or ActiveX. An engineer a Entertron will have to add the protocol to the firmware. This will use valuable prom or flash space as the DF1 protocol is not just one protocol. It is a datalink layer and mulitple application layers depending on how many AB PLCs Entertron wishs to emulate.

Steve, we use DF1 as our standard protocol modbus as a option. The reason we prefer DF1 is that:

1. it has better support for different data types such as floats. The float type and double integer types are defined in DF1 and is a continually question if you monitor the modbus forums.
2. DF1 is not timing dependent, Modbus is. Modbus requires time at character times. This is not easy to do on a PC running windows. It may also be a problem on a PLC with long scan times.
3. DF1 supports segmented(file) and larger data areas.
 
If I remember correctly one of your previous posts stated that your controllers are coded in assembly. Undoubtadly so is ML 1000.
Last time I looked ML 1000 was using Intel 8051 type processor and it only had one processor for both ladder processing and communications.
You should be able to implement DF1 in assembly.
ML has a timeout adjustable in 20 ms increments, you can get away with just pegging it at 1s , that's what RSLinx does anyways.

You only need to move data to and from data tables ( AB uses DF1 for programming as well).

I have done DF1 in different languages including assembly and I like assembly simply because you can achieve maximum throughput.

Short term solution for you is to get a DF1 to ModBus converter.
They are costly and will slow the communications down.
Most wireless Modems use DF1 half duplex.
 

Similar Topics

I need some clarification. Do they have something called Fetch/Write that is different from Get/Put? How do they differ? Are they serial or...
Replies
5
Views
2,117
Has anybody ever written code to implement their own version of the ROC protocol? The book is helpful to a point, but it lacks a lot of really...
Replies
2
Views
2,460
I was wondering if anyone else on this site was using the Horner NX PLC or similar Horner product? If they are has anyone written a protocol...
Replies
2
Views
3,437
Hello, I am new to Codesys, and am trying to learn about it for a project we're developing. I've got a couple questions, but first a little...
Replies
1
Views
72
I'm trying to build my Classic Step 7 programming skills this weekend. I get stuck on little things that are not covered in YouTube tutorials. I'm...
Replies
7
Views
248
Back
Top Bottom