Jump to content



Photo
- - - - -

BSL instruction and array tag

  • Please log in to reply
3 replies to this topic

#1 slcman

slcman

    Sparky

  • MrPLC Member
  • PipPipPip
  • 336 posts
  • Gender:Male
  • Country:Canada
    Canada

Posted 27 February 2007 - 10:10 PM

Hi,
I need to use data shift in my program. I want to use BSL instruction in a 1769-L32E plc. I'm not able to create a array tag. When I compile I alway have a error due to a array tag not created (picture). I did't found anything on "create a array tag" in help menu.

In my sample, array_1 is; type : Base Data type: DINT Scope: MainProgram Style: Decimal

Finally, I have another question: where is my first scan bit S:1/15 ???? I used these bit very often in my SLC pgm.

Thanks

Attached Thumbnails

  • Sans_titre.JPG

Edited by slcman, 27 February 2007 - 10:34 PM.

------------------------------------------------------------------------------------------------------------------------------------------------------------
SLCMAN

#2 Ken Roach

Ken Roach

    Propeller Head

  • MrPLC Member
  • PipPipPipPipPipPip
  • 2264 posts

Posted 27 February 2007 - 11:43 PM

Define your "array1" tag as a Boolean Array instead of a DINT. For the base data type, key in "BOOL[32]" or "BOOL[64]".

Arrays in ControlLogix are designated when you create the tag, and put the array dimension in square brackets. That's also how array elements are addressed in logic.

There are a small handful of Status flags that are implemented as pre-defined tags, including "S:FS", which is the First Scan bit. All other status information in the Logix family is accessed using Get System Variable (GSV) instructions.

#3 slcman

slcman

    Sparky

  • MrPLC Member
  • PipPipPip
  • 336 posts
  • Gender:Male
  • Country:Canada
    Canada

Posted 04 March 2007 - 01:56 PM

Define your "array1" tag as a Boolean Array instead of a DINT. For the base data type, key in "BOOL[32]" or "BOOL[64]".

Arrays in ControlLogix are designated when you create the tag, and put the array dimension in square brackets. That's also how array elements are addressed in logic.

There are a small handful of Status flags that are implemented as pre-defined tags, including "S:FS", which is the First Scan bit. All other status information in the Logix family is accessed using Get System Variable (GSV) instructions.



Thanks for your help. BOOL array doesn't work with BSL instruction, I must use a DINT array [1] for 32 bit shift register. I really appreciate S:FS bit....ist's hard to find on a first experience!
------------------------------------------------------------------------------------------------------------------------------------------------------------
SLCMAN

#4 Contr_Conn

Contr_Conn

    Sparky

  • MrPLC Member
  • PipPipPip
  • 426 posts
  • Country:United States
    United States

Posted 04 March 2007 - 02:41 PM

In tag editor specify array_1 properties as DINT[1]
In BSL instruction specify array_1[0] to point to the first array word




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users