ridgemao

MrPLC Member
  • Content count

    5
  • Joined

  • Last visited

Community Reputation

0 Neutral

About ridgemao

  • Rank
    Newbie

Profile Information

  • Gender Male
  • Country China
  1. Explained very thoroughly, thank you so much.
  2. I need to read or write several bytes to PLC from PC's VC program, this VC program is written by myself. I knows it's easy to use RS232 to communicate between PC and PLC. But it is not a reliable communication compared to TCP over ethernet. These days I was trying to use OMRON's CP1L PLC and CP1W-CIF41 ethernet option board, but finally I found the CP1W-CIF41 doesn't support basic TCP socket operation, it only support FINS/TCP, which is a more higher layer protocol in application layer. I don't want to study FINS, because I thought it was not a popular protocol in industry. what is the common solution in industry to communicate between PC and PLC over ethernet? Especially communicating with the PC's VC program written for special application. Any ideas? thanks.
  3. I found a workaround way to solve my problem. What I really want to do inside FB is that: I create an array(or memory space) inside FB, then I fill in the array with some calculating results. I need to pass this array to other FB. I do want to re-use my FB and I can't use "inout" in CP1L, as mentioned by BnB. So I use MOVR to get the array's first address inside FB. My solution is that uncheck "check stack" in the menu of PLC->Program Check Option.
  4. I defined an array_variable in functional block(ladder program), and I get error when I try to use MOVR to get the address of "array_variable[0]". If I assigned AT settings to array_variable, then I can use the movr command. Is there any other method to use MOVR command inside Functional Block without AT settings? thanks.
  5. I got warning with "SNUM" command used in functional block: WARNING: SNUM(638): Operand data size is unknown. Check the control data value and the size of arrays or variables of other operands. Rung 3 (6,0). I had defined a stack using "SSET" command in this functional block without any warnings. And if I assigned the functional block's AT property for the TB operand of "SNUM", no warnings any more. Is this a bug for CX-Programmer v9.12? Or is there any other method for me to get the size of the stack defined by SSET? The attachment is the screenshot of my program's warning.