EasyManua.ls Logo

Omron CJ - REFERENCE MANUAL 07-2009

Omron CJ - REFERENCE MANUAL 07-2009
267 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
65
FINS Commands with Host Link Protocol Section 3-5
Programming Example for Host Computer Side (BASIC): Reception
10 ’***************************************
20 ’**** CS1W-SCU21 Serial Communications Unit ****
30 ’**** Command to Host Computer (RECV(098)) ****
40 ’**** Sample Reception Program ****
50 ’***************************************
60 ’
70 ’============ Initial Settings ============
80 CLOSE 1
90 ON ERROR GOTO *EROPE
100 DIM CHDATA$ (300) :’ Data array declaration
110 CHDATA$ (0) =”0000”:CHDATA$ (1) =”1111”:CHDATA$ (2) =”2222”
120 CHDATA$ (3) =”3333”:CHDATA$ (4) =”4444”:CHDATA$ (5) =”5555”
130 OPEN ”COM:E73” AS #1 :’ Opens port.
140 ’
150 ’============ Main Process ============
160 RESPDATA$=””
170 INPUT #1, COMMAND$ :’ Receives data from PLC (line).
180 T$=LEFT$ (COMMAND$, LEN (COMMAND$) -3) :’ Checks FCS.
190 GOSUB *FCS
200 IF FCS$<>MID$ (COMMAND$, LEN (COMMAND$) -2, 2) THEN ENDCODE$=”1004”:GOTO *RESPONSE
210 CMNDCODE$=MID$ (COMMAND$, 27, 4) :’ Checks command code.
220 IF CMNDCODE$<>”0101” THEN ENDCODE$=”0401” :GOTO *RESPONSE
230 FOR I=0 TO VAL (”&H”+MID$ (COMMAND$, 39, 4) ) -1 :’ Sets No. of read elements.
240 RESPDATA$=RESPDATA$+CHDATA$ (I)
250 NEXT I
260 PRINT ”Send data”;RESPDATA$
270 ENDCODE$=”0000” :’ Sets end code to “0000”.
280 ’==========================================
290 *RESPONSE :’ Creates a response frame.
300 RSV$=MID$ (COMMAND$, 9, 2) :’ Returns received RSV, SID
310 DA$=MID$ (COMMAND$, 19, 6) :’ without change.
320 SA$=MID$ (COMMAND$, 13, 6) :’ Swaps DNA, DA1, DA2
330 SID$=MID$ (COMMAND$, 25, 2) :’ with SNA, SA1, and SA2.
340 T$=”@000F00C0”+RSV$+”02”+DA$+SA$+SID$+CMNDCODE$+ENDCODE$+RESPDATA$
350 GOSUB *FCS
360 RESPONSE$=T$+FCS$+”*”
370 PRINT #1, RESPONSE$ :’ Transmits data to PLC (line).
380 GOTO 160
390 ’
400 ’===== FCS Calculation Subroutine =====
410 *FCS :’ Adds FCS.
420 L=LEN (T$)
430 A=0
440 FOR J=1 TO L
450 TJ$=MID$ (T$, J, I)
460 A+ASC (TJ$) XOR A
470 NEXT J
480 FCS$=HEX$ (A)
490 IF LEN (FCS$) =1 THEN FCS$=”0”+FCS$
500 RETURN
510 ’
520 ’========== Error processing ==========
530 *EROPE
540 PRINT ”ERL=”:ERL, ”ERR”;ERR
550 CLOSE 1
560 END

Table of Contents

Related product manuals