| Description | uses | Classes, Interfaces, Objects and Records | Functions and Procedures | Types | Constants | Variables |
| Name | Description |
|---|---|
record logentry |
|
record ramplog |
|
record subinfo |
function inttostr(i:longint):string; |
procedure showsafe; |
procedure clearlist; |
procedure subshow; |
procedure makesubprgscreen(active:integer); |
procedure updatesubstarts; |
procedure comwritech_c(port:byte;ch:char); |
procedure comwrite_c(port:byte;st:string); |
function comreadch_c(port:byte):char; |
procedure setcubeinfo; |
procedure cube_set_mled; |
procedure cube_set_bled; |
procedure cube_clr_mled; |
procedure cube_clr_bled; |
procedure cube_set_beep; |
procedure cube_clr_beep; |
procedure cube_blink_m; |
procedure cube_blink_b; |
procedure cube_blink_none; |
procedure cube_set_text(txt:string); |
procedure writeleds; |
procedure clrled(led:string); |
procedure setled(led:string); |
procedure clrlcd; |
procedure setlcdinv; |
procedure clrlcdinv; |
procedure setlcdcur(row,col:byte); |
procedure SetCursor(On: Boolean); |
procedure trigger; |
procedure write_enc_opts; |
procedure enable_enc_reset(ax:integer); |
procedure disable_enc_reset(ax:integer); |
procedure set_do; |
procedure maketargetscreen(active:integer); |
procedure makesubseqscreen(active:integer); |
procedure checkdist; |
procedure makescreen; |
procedure get_enc(ax:integer); |
procedure setdop1; |
procedure confirmbeep; |
procedure sendstatus; |
procedure init; |
procedure setstv(ax:integer); |
procedure clrstv(ax:integer); |
procedure setspeed(ax:integer); |
procedure get_status; |
procedure show_status; |
procedure loadlog(nam:string); |
procedure testpos(ax:integer); |
procedure log_it(ax:integer); |
Procedure ser_transmit(ax:integer); |
procedure checkax; |
procedure calcspeeds; |
procedure go; |
procedure getpos; |
procedure saveposfile; |
procedure insertpos; |
procedure modifypos; |
procedure deletepos; |
procedure listfiles; |
procedure newfile; |
procedure showmode; |
procedure dopmode; |
procedure dologview; |
procedure checkkeys; |
procedure loadzeropos; |
procedure flash; |
procedure closegripper; |
procedure opengripper; |
function ser_map3(ser_inl:byte):char; |
function ser_map2(ser_inl:byte):char; |
procedure getlabel(code:byte); |
procedure preparenextsubstep; |
function ser_map(ser_in:byte):char; |
allpos=array[0..7] of longint; |
lastax=5; |
autolog=false; |
do_log_lower=false; |
subseqstart=1; |
subseqend=2; |
spd_div=200; |
waittime=25; |
gripwaittime=4000; |
dio1=$f000; |
dio2=$f008; |
dio3=$f028; |
dop1=$f030; |
dop2=$f038; |
enc1=$9f20; |
enc2=$9f40; |
enc3=$9f60; |
dac=$9f10; |
dac_sh=$9f12; |
dac_oen=$9f14; |
base=$d000; |
targets=0; |
subvalues=1; |
sublabels=2; |
stop=0; |
up=1; |
down=2; |
max=3; |
slow=4; |
rmanual=5; |
scr_val_top=19; |
scr_menu=17; |
scr_dir=1; |
scr_pos=5; |
scr_pos2=10; |
scr_speed=25; |
scr_target=30; |
scr_dist=45; |
scr_info=60; |
scr_go=67; |
scr_ref=75; |
scr_mode=50; |
scr_sak=20; |
scr_ovr=40; |
scr_time=60; |
scr_drive=1; |
scr_lognr=65; |
scr_targets=30; |
sak_na=0; |
sak_ok=1; |
sak_no=2; |
hand=1; |
single=2; |
auto=3; |
gopen=1; |
gclosed=2; |
waitforinput:boolean; |
winput:char; |
subseqcount:integer; |
subseq_idx:integer; |
subprg_idx:integer; |
oldswitches:byte; |
switches:byte; |
randomstep:boolean; |
safeposition:boolean; |
nextrandomidx:integer; |
lastrandomidx:integer; |
safenow:boolean; |
safecount:integer; |
nextstep:integer; |
beginseq:boolean; |
substarts:array[0..100] of subinfo; |
accspd:array[1..6] of integer; |
linspd:array[1..6] of integer; |
do_log_upper:boolean; |
do_log:boolean; |
linmode:boolean; |
axtestlog:array[1..6] of ramplog; |
axlog:array[1..6] of ramplog; |
brdistfakt:array[1..6] of real; |
axmax:array[1..6] of word; |
cubeinfo:byte; |
first:integer; |
val1:integer; |
i:integer; |
j:integer; |
maindel:integer; |
targetgripstate:longint; |
oldgripstate:longint; |
gripstate:longint; |
griptmp:byte; |
ovr: Byte; |
input: Byte; |
ser_in: Byte; |
ser_in2: Byte; |
com: Byte; |
sel_ax:integer; |
videowait:boolean; |
cubemode:boolean; |
slowmode:boolean; |
labelmode:boolean; |
posstr:string; |
dop1_val:word; |
old_pgm_mode:integer; |
pgm_mode:integer; |
enc_res:array[1..6] of boolean; |
gripper:boolean; |
gripper_finished:boolean; |
aerger:boolean; |
oldaerger:boolean; |
selmode:boolean; |
ctrlmode:word; |
serialdiv:byte; |
currentprg:string[12]; |
currentsub:string[12]; |
all_stop:boolean; |
old_all_stop:boolean; |
refmode:boolean; |
oldrefmode:boolean; |
nachlauf:boolean; |
brake:boolean; |
program_mode:boolean; |
condition:boolean; |
conditionmode:boolean; |
service:boolean; |
driveon:boolean; |
dop_active:boolean; |
manual:array[1..6] of boolean; |
oldsval:byte; |
sval:byte; |
sak:array[1..6] of integer; |
timer: htimerobj; |
time: longint; |
slotime: longint; |
griptime: longint; |
keytimer:htimerobj; |
slotimer:htimerobj; |
griptimer:htimerobj; |
logcount:integer; |
logmax:array[1..6] of word; |
lognr:longint; |
statcount:longint; |
keys_enabled:boolean; |
listmode:integer; |
prefix:string; |
video_playing:boolean; |
di_val1:byte; |
di_val2:byte; |
di_val3:byte; |
old_di_val1:byte; |
old_di_val2:byte; |
old_di_val3:byte; |
nc_ready:boolean; |
dac_oen_val:word; |
do_val:byte; |
extport:byte; |
inifile:file of longint; |
posfile:file of allpos; |
cval:longint; |
k:char; |
sercount:byte; |
man_speed:array[1..6,1..5] of word; |
man_spd_idx:integer; |
speed:array[1..6] of word; |
minupspeed:array[1..6] of word; |
mindownspeed:array[1..6] of word; |
maxupspeed:array[1..6] of word; |
maxdownspeed:array[1..6] of word; |
absmaxupspeed:array[1..6] of word; |
absmaxdownspeed:array[1..6] of word; |
minaccupspeed:array[1..6] of word; |
minaccdownspeed:array[1..6] of word; |
trackspeed:array[1..6] of word; |
m:array[1..6] of word; |
ramp:array[1..6] of byte; |
step:array[1..6] of word; |
dir:array[1..6] of byte; |
wait:array[1..6] of byte; |
pos:allpos; |
temppos:allpos; |
originpos:allpos; |
swmax:allpos; |
swmin:allpos; |
target:allpos; |
params:allpos; |
program_pos:array[0..100] of allpos; |
subseq:array[0..100] of allpos; |
zeropos:allpos; |
program_step:integer; |
program_max:longint; |
program_first:longint; |
program_last:longint; |
dist:allpos; |
storedpos:allpos; |
preval:array[1..6] of word; |
refok:array[1..6] of boolean; |
gopos:array[1..6] of boolean; |
ledarray:array[1..11] of byte; |
tlname:string; |
subprgcount:integer; |
function inttostr(i:longint):string; |
|
{*function inttostr(i:longint):string;*} |
procedure showsafe; |
|
{*show safe position sequence count*} |
procedure clearlist; |
|
{*clear targets list area on screen*} |
procedure subshow; |
|
{*debug *} |
procedure makesubprgscreen(active:integer); |
|
{*show subprg with labels, startid and step count*} |
procedure updatesubstarts; |
|
{*redo subprg list*} |
procedure comwritech_c(port:byte;ch:char); |
procedure comwrite_c(port:byte;st:string); |
function comreadch_c(port:byte):char; |
procedure setcubeinfo; |
procedure cube_set_mled; |
procedure cube_set_bled; |
procedure cube_clr_mled; |
procedure cube_clr_bled; |
procedure cube_set_beep; |
procedure cube_clr_beep; |
procedure cube_blink_m; |
procedure cube_blink_b; |
procedure cube_blink_none; |
procedure cube_set_text(txt:string); |
procedure writeleds; |
|
{*write led status to schleicher uhg*} {***********************************************************} |
procedure clrled(led:string); |
|
{*clear single led status in ledarray,call writeleds afterwards*} {***********************************************************} |
procedure setled(led:string); |
|
{*set single led status in ledarray,call writeleds afterwards*} {***********************************************************} |
procedure clrlcd; |
|
{*clear lcd screen on schleicher uhg*} {***********************************************************} |
procedure setlcdinv; |
|
{*set inverse mode for subsequent text writes on schleicher uhg*} {***********************************************************} |
procedure clrlcdinv; |
|
{*clear inverse mode for subsequent text writes on schleicher uhg*} {***********************************************************} |
procedure setlcdcur(row,col:byte); |
|
{*cursor positioning on schleicher uhg*} {***********************************************************} |
procedure SetCursor(On: Boolean); |
|
{*set screen cursor on/off*} {***************************************************************} |
procedure trigger; |
|
{*trigger for oscilloscope on external port*} {***************************************************************} |
procedure write_enc_opts; |
|
{*for encoder reset enable, not used yet*} {***************************************************************} |
procedure enable_enc_reset(ax:integer); |
|
{*set bits for encoder reset enable and write them*} {***************************************************************} |
procedure disable_enc_reset(ax:integer); |
|
{*clear bits for encoder reset enable and write them*} {***************************************************************} |
procedure set_do; |
|
{*set digital outputs*} {***************************************************************} |
procedure maketargetscreen(active:integer); |
|
{*show program positions*} {***************************************************************} |
procedure makesubseqscreen(active:integer); |
|
{*show subsequence positions*} {***************************************************************} |
procedure checkdist; |
|
{*calculate distances for all axes*} {***************************************************************} |
procedure makescreen; |
|
{*print static parts of screen*} {***************************************************************} |
procedure get_enc(ax:integer); |
|
{*get real position value, add teilistwert in 2s complement*} {***************************************************************} |
procedure setdop1; |
|
{*set digital relais output value*} {******************************************************} |
procedure confirmbeep; |
|
{*beep all beepers to confirm keypress*} {***************************************************************} |
procedure sendstatus; |
|
{*send status to schleicher uhg and cube control*} {***************************************************************} |
procedure init; |
|
{*initialize machine*} {***************************************************************} |
procedure setstv(ax:integer); |
|
{*set stillstandsvorgabe for axes*} {***************************************************************} |
procedure clrstv(ax:integer); |
|
{*clr stillstandsvorgabe for axes*} {***************************************************************} |
procedure setspeed(ax:integer); |
|
{*set speed for axes*} {***************************************************************} |
procedure get_status; |
|
{*get status values from hardware*} {***************************************************************} |
procedure show_status; |
|
{*show hardware status*} {***************************************************************} |
procedure loadlog(nam:string); |
|
{**************************************************************} |
procedure testpos(ax:integer); |
|
{*check ax position, correct speeds or stop*} {***************************************************************} |
procedure log_it(ax:integer); |
|
{***************************************************************} |
Procedure ser_transmit(ax:integer); |
|
{*how to get 32 bit data over a 7bit connection, not used yet*} {***************************************************************} |
procedure checkax; |
|
{*check encoders / call testpos for all ax*} {***************************************************************} |
procedure calcspeeds; |
|
{*calculate speeds and start movement*} {***************************************************************} |
procedure go; |
|
{*set axes in motion for real*} |
procedure getpos; |
|
{*read program*} {***************************************************************} |
procedure saveposfile; |
|
{*write program to disk*} {***************************************************************} |
procedure insertpos; |
|
{*insert duplicate after current step and write to disk*} {***************************************************************} |
procedure modifypos; |
|
{*modify position set to current and save to disk*} {***************************************************************} |
procedure deletepos; |
|
{*delete current position and write to disk*} {***************************************************************} |
procedure listfiles; |
|
{*list .dat files in c:\kukaprg*} {***************************************************************} |
procedure newfile; |
|
{*create new program file*} {***************************************************************} |
procedure showmode; |
procedure dopmode; |
|
{*change dig out directly, will be obsolete*} {***************************************************************} |
procedure dologview; |
procedure checkkeys; |
|
{*general keyboard input check routine*} {***************************************************************} |
procedure loadzeropos; |
|
{*set target to all zero*} {***************************************************************} |
procedure flash; |
|
{*all purpose bitflasher or so*} {***************************************************************} |
procedure closegripper; |
|
{***************************************************************} |
procedure opengripper; |
|
{***************************************************************} |
function ser_map3(ser_inl:byte):char; |
|
{*check input from video box on com2*} {***************************************************************} |
function ser_map2(ser_inl:byte):char; |
|
{*check input from control box at wrist*} {***************************************************************} |
procedure getlabel(code:byte); |
|
{*label input for schleicher, not used*} {***************************************************************} |
procedure preparenextsubstep; |
|
{*put coordinates into target var*} {*prepare next step in listmode subvalues, insert safe steps if subseqstart*} |
function ser_map(ser_in:byte):char; |
|
{*key map for schleicher UHG*} {***************************************************************} |
allpos=array[0..7] of longint; |
|
logindex |
lastax=5; |
|
graph, |
autolog=false; |
do_log_lower=false; |
subseqstart=1; |
subseqend=2; |
spd_div=200; |
waittime=25; |
|
*wait between pgm steps* |
gripwaittime=4000; |
|
*wait for gripper* |
dio1=$f000; |
|
*hardware adresses* |
dio2=$f008; |
dio3=$f028; |
dop1=$f030; |
dop2=$f038; |
enc1=$9f20; |
enc2=$9f40; |
enc3=$9f60; |
dac=$9f10; |
dac_sh=$9f12; |
dac_oen=$9f14; |
base=$d000; |
targets=0; |
|
*listmode* |
subvalues=1; |
sublabels=2; |
stop=0; |
|
*motion status* |
up=1; |
down=2; |
max=3; |
slow=4; |
rmanual=5; |
scr_val_top=19; |
|
*screen positions* |
scr_menu=17; |
scr_dir=1; |
scr_pos=5; |
scr_pos2=10; |
scr_speed=25; |
scr_target=30; |
scr_dist=45; |
scr_info=60; |
scr_go=67; |
scr_ref=75; |
scr_mode=50; |
scr_sak=20; |
scr_ovr=40; |
scr_time=60; |
scr_drive=1; |
scr_lognr=65; |
scr_targets=30; |
sak_na=0; |
|
*sak status* |
sak_ok=1; |
sak_no=2; |
hand=1; |
|
*general modes* |
single=2; |
auto=3; |
gopen=1; |
|
*gripper modes* |
gclosed=2; |
waitforinput:boolean; |
winput:char; |
subseqcount:integer; |
subseq_idx:integer; |
subprg_idx:integer; |
oldswitches:byte; |
switches:byte; |
randomstep:boolean; |
safeposition:boolean; |
nextrandomidx:integer; |
lastrandomidx:integer; |
safenow:boolean; |
safecount:integer; |
nextstep:integer; |
beginseq:boolean; |
substarts:array[0..100] of subinfo; |
accspd:array[1..6] of integer; |
linspd:array[1..6] of integer; |
do_log_upper:boolean; |
do_log:boolean; |
linmode:boolean; |
axtestlog:array[1..6] of ramplog; |
axlog:array[1..6] of ramplog; |
brdistfakt:array[1..6] of real; |
axmax:array[1..6] of word; |
cubeinfo:byte; |
first:integer; |
val1:integer; |
i:integer; |
j:integer; |
maindel:integer; |
targetgripstate:longint; |
oldgripstate:longint; |
gripstate:longint; |
griptmp:byte; |
ovr: Byte; |
input: Byte; |
ser_in: Byte; |
ser_in2: Byte; |
com: Byte; |
sel_ax:integer; |
videowait:boolean; |
cubemode:boolean; |
slowmode:boolean; |
labelmode:boolean; |
posstr:string; |
dop1_val:word; |
old_pgm_mode:integer; |
pgm_mode:integer; |
enc_res:array[1..6] of boolean; |
gripper:boolean; |
gripper_finished:boolean; |
aerger:boolean; |
oldaerger:boolean; |
selmode:boolean; |
ctrlmode:word; |
serialdiv:byte; |
|
log:array[4..6,0..3200] of logentry; |
currentprg:string[12]; |
currentsub:string[12]; |
all_stop:boolean; |
old_all_stop:boolean; |
refmode:boolean; |
oldrefmode:boolean; |
nachlauf:boolean; |
brake:boolean; |
program_mode:boolean; |
condition:boolean; |
conditionmode:boolean; |
service:boolean; |
driveon:boolean; |
dop_active:boolean; |
manual:array[1..6] of boolean; |
oldsval:byte; |
sval:byte; |
sak:array[1..6] of integer; |
timer: htimerobj; |
time: longint; |
slotime: longint; |
griptime: longint; |
keytimer:htimerobj; |
slotimer:htimerobj; |
griptimer:htimerobj; |
logcount:integer; |
logmax:array[1..6] of word; |
lognr:longint; |
statcount:longint; |
keys_enabled:boolean; |
listmode:integer; |
prefix:string; |
video_playing:boolean; |
di_val1:byte; |
di_val2:byte; |
di_val3:byte; |
old_di_val1:byte; |
old_di_val2:byte; |
old_di_val3:byte; |
nc_ready:boolean; |
dac_oen_val:word; |
do_val:byte; |
extport:byte; |
inifile:file of longint; |
posfile:file of allpos; |
cval:longint; |
k:char; |
sercount:byte; |
man_speed:array[1..6,1..5] of word; |
man_spd_idx:integer; |
speed:array[1..6] of word; |
minupspeed:array[1..6] of word; |
mindownspeed:array[1..6] of word; |
maxupspeed:array[1..6] of word; |
maxdownspeed:array[1..6] of word; |
absmaxupspeed:array[1..6] of word; |
absmaxdownspeed:array[1..6] of word; |
minaccupspeed:array[1..6] of word; |
minaccdownspeed:array[1..6] of word; |
trackspeed:array[1..6] of word; |
m:array[1..6] of word; |
ramp:array[1..6] of byte; |
step:array[1..6] of word; |
|
integer; |
dir:array[1..6] of byte; |
wait:array[1..6] of byte; |
pos:allpos; |
temppos:allpos; |
originpos:allpos; |
swmax:allpos; |
swmin:allpos; |
target:allpos; |
params:allpos; |
|
*params[0]=program_max* |
program_pos:array[0..100] of allpos; |
subseq:array[0..100] of allpos; |
zeropos:allpos; |
|
subseqmode:boolean; |
program_step:integer; |
program_max:longint; |
program_first:longint; |
program_last:longint; |
dist:allpos; |
storedpos:allpos; |
preval:array[1..6] of word; |
refok:array[1..6] of boolean; |
gopos:array[1..6] of boolean; |
ledarray:array[1..11] of byte; |
tlname:string; |
subprgcount:integer; |