Greetings I need help.
I am doing a custom Html page to control Fanuc robot I/O. I am doing this with help of Karel.
Here are the programs. HTML program for sending data and Karel program for receiving data.
I don't know why they won't work. Please help me. I picked KAREL 632 during configuration of my cell and Karel is unlocked in TP.
The HTML page is saved in MC folder in My workcells.
KAREL
-------------------------------------------------------------
PROGRAM prvi -- svaki program mora zapoceti s "PROGRAM" nakon cega slijedi ime programa
%NOLOCKGROUP -- grupe moraju biti otkljucane da bi program radio
VAR -- sve varijable koje se koriste u programu moraju se definirati
object : STRING[12]
operate : STRING[12]
INDEX : STRING[12]
value : STRING[12]
uobject : STRING[12] -- duple varijable koje ce se koristiti za prebacijavje teksta u velika slova
uoperate: STRING[12]
uindex : STRING[12]
uvalue : STRING[12]
value_i : INTEGER -- ostale varijable
value_r : REAL
index_i: INTEGER
status : INTEGER
i : INTEGER
return_code : INTEGER
ROUTINE toupper(p_char: INTEGER): STRING -- prebacivanje ulaza u velika slova
BEGIN
IF (p_char > 96) AND (p_char < 123) THEN
p_char = p_char - 32
ENDIF
RETURN (CHR(p_char))
END toupper
BEGIN
IF UNINIT(object) THEN object = ''; ENDIF -- provjera neinicializiranih varijabli prije korištenja
IF UNINIT(operate) THEN operate = ''; ENDIF
IF UNINIT(INDEX) THEN INDEX = ''; ENDIF
IF UNINIT(value) THEN value = ''; ENDIF
uobject = ''
FOR i = 1 TO STR_LEN(object) DO
uobject = uobject + toupper(ORD(object, i))
ENDFOR
uoperate = ''
FOR i = 1 TO STR_LEN(operate) DO
uoperate = uoperate + toupper(ORD(operate, i))
ENDFOR
uindex = ''
FOR i = 1 TO STR_LEN(INDEX) DO
uindex = uindex + toupper(ORD(INDEX, i))
ENDFOR
uvalue = ''
FOR i = 1 TO STR_LEN(value) DO
uvalue = uvalue + toupper(ORD(value, i))
ENDFOR
IF (uobject = 'DOUT') THEN
IF (uoperate = 'SET') THEN
CNV_STR_INT(uindex, index_i)
IF (uvalue = 'ON') THEN
DOUT[index_i] = ON
ENDIF
IF (uvalue = 'OFF') THEN
DOUT[index_i] = OFF
ENDIF
ENDIF
ENDIF
IF (uobject = 'NUMREG') THEN
CNV_STR_INT(uindex, index_i)
IF (uoperate = 'SETINT') THEN
CNV_STR_INT(uvalue, value_i)
SET_INT_REG(index_i, value_i, status)
ENDIF
IF (uoperate = 'SETREAL') THEN
CNV_STR_REAL(uvalue, value_r)
SET_REAL_REG(index_i, value_r, status)
ENDIF
ENDIF
return_code = 204 -- povratak NO RESPONSE koda - potrebno
END prvi -- svaki program mora završiti s "END" nakon cega slijedi ime programa
-----------------------------------------------------------------------------------------------------------------------------
HTML PROGRAM
-------------------------------------------------------------------------------------------------
<!DOCTYPE html>
<html lang="hr-HR">
<head>
<meta charset=UTF-8>
<div align="mid">
<title>FANUC WEB WIZARD - Paletizacija</title> </div>
</head>
<body bgcolor="#4169E1">
<h2>
<font color="#FFFFFF">
</fontcolor>Primjeri mogućeg sadržaja:
</h2>
<table>
<tr>
<h3>1. Postavljanje digitalnih izlaza:</h3>
<td>
<form action="C:\Users\kovad\OneDrive\Dokumenti\My Workcells\Projekt_IRM\Robot_1\MC\prvi" method="GET"> <!--link na karel program-->
<div align="left">
<input type="hidden" name="object" value="DOUT">
<input type="hidden" name="operate" value="set">
<input type="hidden" name="index" value="1"> <!--broj izlaza koji se mijenja-->
<input type="hidden" name="value" value="ON">
<input type="submit" value="Upali DOUT[1]">
</div>
</form>
</td>
<td>
<form action="C:\Users\kovad\OneDrive\Dokumenti\My Workcells\Projekt_IRM\Robot_1\MC\prvi" method="GET"> <!--link na karel program-->
<div align="left">
<input type="hidden" name="object" value="DOUT">
<input type="hidden" name="operate" value="set">
<input type="hidden" name="index" value="1"> <!--broj izlaza koji se mijenja-->
<input type="hidden" name="value" value="OFF">
<input type="submit" value="Ugasi DOUT[1]">
</div>
</form>
</td>
</tr>
</table>
<table>
<tr>