发表于:2007-08-17 11:01:00
17楼
“采用叠加虚拟轴的方法实现2轴同步,在设置轴参数时,是不是只要设定虚拟轴的参数。比如,FWD_IN,FHOLD_IN的值等,因为正,反向限位各有一个。”
答:是的,这样做没有问题,你可以让虚拟轴做为主轴,然后只对虚拟轴做操作即可。
“模拟器中的terminal模拟的是串口么?那弹出的I/O小窗口有事什么呢?我把一些窗口单击成绿色,为什么用in指令读不到值啊?那不是数字输入么?”
答:Trio的仿真系统软件目前功能有限,建议购买控制器后直接使用。Termial指的是终端调试台,共有四个调试台,分为0、5、6、7,其中0号调试台可以进行命令行操作,程序中的各种命令均可以在此执行,5、6、7调试台只能做为显示终端,在程序中用print指令可以向这些调试台中输出信息。
“op控制的也是数字量吧?那想输出模拟量智能用print指令么?”
答:OP命令是指将对应的数字输出端口进行ON/OFF操作的指令,对于模拟量输出用DAC命令输出,请仔细参看前面的回帖说明。Print指令是用来进行数据传输的输出指令,如print#5,"hello" 的意思是向5号终端台上输出“hello”字符。另外,print指令还常用在串口通信上的数据输出,如print#1,VR(0) 指的是将VR(0)的内容按照ASCII的形式通过串口1输出出去。请仔细阅读书册,里面有相关的命令举例。
“vr,table中的数据为浮点数吧,我要想保存字符串,如absd....应该怎么办啊?”
答:VR和Table的数据格式说明在本论坛的另外一个关于TRIO问题的回帖中有比较详细的说明,请查找。关于字符串的问题,目前需要你自己用Basic程序自己判断执行,比如存储“abcd”从vr(0)到vr(3)中,那么vr(0)=$61,VR(1)=$62,VR(2)=$63,VR(3)=$64. “$”标志加到数字前,表示该数字为16进制数。
“hex指令看的也不是很明白,我写了,PRINT#0,hex(95),是应该输出95的ascII码么?但我没有看到显示啊?”
答:仿真软件目前对此不支持,以下是在控制器中试验的结果
>>PRINT#0,hex(95)
5F
“Hex”的意思是将其内部变量用16进制格式进行显示,只用在print指令中,做为显示用,其他情况下不可使用。
“linput指令也没有看清楚怎么用.”
答:linput指令用来从一个端口处接收数据串使用,其意思是当有数据串从某个端口输入时,用linput指令进行接收时,只有当遇到“CR”回车时,才结束一次输入,并将输入的结果存放在其后参数指定的VR数据内。linput指令使用起来,限制条件过多,一般用GET指令来进行接收操作。