Jump to content
OMRON Forums

Recommended Posts

Posted

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.

  • Replies 4
  • Created
  • Last Reply

Top Posters In This Topic

Posted

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.

 

 

 

Posted

Charles:

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.

 

Guest
This topic is now closed to further replies.

×
×
  • Create New...