Jump to content
OMRON Forums

ACC 72E - DeviceNet Master Diagnostic Mapping


Recommended Posts

I am using the ACC 72E - Option 3 - DeviceNet Master on the UMAC (Turbo PMAC 2 CPU) controller. It is set for base address $6D000.


I am interested in monitoring the Diagnostic Flags (bGlobalBits, bDNM_State, bErrDevAdr) but I am not sure how to map them and how to reasonably monitor them in the UMAC program. Any help you give would be appreciated.

Link to comment
Share on other sites

  • Replies 4
  • Created
  • Last Reply

Top Posters In This Topic

Referring to page 37 of the ACC-72E manual, we can see the memory offsets of these flags from the base address of the card in Turbo PMAC:


Variable      Size     Offset  Description 
bGlobalBits   1 byte    1F40H   Global error bits 
bDNM_State    1 byte    1F41H   Main state of the master system
bErrDevAdr    1 byte    1F42H   Faulty remote address 


As with any data on ACC-72E, in order to read and write to these registers, define an M-variable that points to the upper 8 bits in memory with an offset from the base address that is configured with SW1. So, first, add the base offset ($6D000 for your card, right?) to these values:


Variable            Absolute Address             M-Variable Definition
bGlobalBits         $6D000 + $1F40              M5000->X:$6EF40,16,8,U
bDNM_State         $6D000 + $1F41               M5001->X:$6EF41,16,8,U
bErrDevAdr         $6D000 + $1F42               M5002->X:$6EF42,16,8,U


Unfortunately, the manual is not clear whether this is in X or Y memory. What I have given above points to X. If it is in fact in Y memory, your M-Variables would look like:


Variable              Absolute Address             M-Variable Definition
bGlobalBits          $6D000 + $1F40              M5000->Y:$6EF40,16,8,U
bDNM_State           $6D000 + $1F41               M5001->Y:$6EF41,16,8,U
bErrDevAdr          $6D000 + $1F42               M5002->Y:$6EF42,16,8,U


As I do not have the hardware in front of me to test this, please let me know whether that solves your problem.




Link to comment
Share on other sites


I guess I was confused as to whether the offset applied to the ACC72E base memory location ($6D000) or to the DPR base memory location ($60000). You were correct - it is the $6D000.


There is one other fine point that a coworker reminded of - and this is true of all DeviceNet device mapping on the ACC72E. Since the Pmac uses both X and Y memory addresses, you need to divide the offset by 2 and alternate between the Y and X memory.


Variable: bGlobalBits

Absolute Address: $6D000 + ($1F40)/2

M-Variable Definition: M5000->Y:$6DFA0,16,8,U


Variable: bDNM_State

Absolute Address: $6D000 + ($1F41)/2

M-Variable Definition: M5001->X:$6DFA0,16,8,U


Variable: bErrDevAdr

Absolute Address: $6D000 + ($1F42)/2

M-Variable Definition: M5002->Y:$6DFA1,16,8,U


This works.


Link to comment
Share on other sites

This topic is now closed to further replies.

  • Create New...