项目的创建步骤
在Epson RC+8.0中,CODESYS的函数块库被安装到以下文件夹中。
\EpsonRC80\Fieldbus\FunctionBlockLibraries\CODESYS
作为示例,下面说明创建简单项目(用于进行机器人电机的ON/OFF操作)的方法。
首先创建新项目。
启动CODESYS,单击[New Project]。
选择[Projects]-[Standard project]。输入项目名称与保存位置,单击[OK]。
选择相应的设备与[Ladder Logic Diagram],单击[OK]。
这样即新建了空白的项目。
接下来将CODESYS用函数块库导入至新项目内。
双击[Library Manager]。
接下来单击[Library Repository]。
单击[Install]。
选择Epson提供的“SPEL_Library.compiled-library”文件,然后单击[Open]。
文件位于\EpsonRC80\Fieldbus\FunctionBlockLibraries\CODESYS文件夹内。
确认[Miscellaneous]中有“SPEL Library”。
单击[Library Manager]中的[Add Library]。
选择[SPEL Library],单击[OK]。
函数块被安装。
接下来创建程序。
双击[PLC_PRG],显示程序画面。
接下来拖放[Box],添加3个。
单击Box中的[???]。
接下来单击[???]旁边的[…]。
从函数块一览中选择[SPEL_Init],单击[OK]。
会显示函数块名称。
请在这种状态下按下[Enter]键。
会显示函数块的输入输出。
请在这种状态下按下[Enter]键。
会显示自动声明画面。
单击[OK]。
会自动添加变量。
单击连接至Start的a触点(上图蓝框部分)的[???]。
接下来输入该触点的名称。在此处输入“Start_Init_0”。
接下来按下[Enter]键。
会显示自动声明画面。单击[OK]。
会自动添加变量。
按相同的步骤,按如下所述更改所有的[???]。
接下来进行与机器人连接的准备。
右键单击[Device],单击[Add Device]。
选择[EtherCAT Master],单击[Add Device]。
“EtherCAT_Master”会被添加。
选择[Tools],单击[Device Repository]。
单击[Install]。
根据要使用的机器人,选择设定文件。
设定文件位于以下文件夹中。
\EpsonRC80\Fieldbus\EtherCAT在此处选择“EPSN_TSERIES_ECT_V2.3_for_OMRON_rev2.xml”,然后单击[Open]。
完成设定文件的读入,并显示“TSERIES EtherCAT Slave”。
右键单击[EtherCAT_Master],单击[Add Device]。
将“Vendor”更改为[SEIKO EPSON Corporation]。
选择[TSERIES EtherCAT Slave],单击[Add Device]。
双击[TSERIES_Slave],单击[Process Data]。
按如下所述更改复选框。
要与控制器进行通信时,设定“32byte”。
(客户使用时,请确保现场总线从站的输入输出字节数与设定一致)
执行函数块。
右键单击PC的任务栏或系统托盘中的PLC,单击[Start PLC]。
确认PLC的显示发生变化。
双击[Device],单击[Communication Settings]、[Scan Network]。
选择显示的设备,单击[OK]。
确认设备颜色变为绿色。
双击[EtherCAT_Master],单击[General]、[Browse]。
选择要使用的网络适配器,单击[OK]。
选择[Build],单击[Build]。
确认没有错误。
右键单击[Application],单击[Add Object]、[Global Variable List…]。
单击[Add]按钮。
会添加全局变量列表。
将“VAR_GLOBAL”更改为“VAR_CONFIG”。
选择[Declarations],单击[Add All Instance Paths]。
将当前设定的地址更改为要使用的地址。
如下所述为更改示例。请参考“4.2.2 要使用的地址”,在“AT”以后设定适当的地址。
选择[Online],单击[Login]。
选择[Debug],单击[Start]。
确认“TSERIES_Slave”左侧显示绿色循环箭头。
双击SPEL_Init的a触点,显示“[TRUE]”。
接下来右键单击,然后单击[Write All Values of ‘Device.Application’],写入值。
如果结束函数块执行,Done则会变为TRUE。
也可以按同样的步骤执行SPEL_MotorOn、SPEL_MotorOff。