西门子博途1500SCL程序和梯形图两者结合编程,包括西门子v90伺服profinet通讯控制
西门子博途1500SCL程序和梯形图两者结合编程包括西门子v90伺服profinet通讯控制发那科机器人profinet通讯控制多profinet io从站扫码枪串口通讯触摸屏类似配方功能多行参数显示模块化结构化编程方式整体综合性好出售的是plc程序和触摸屏程序在工业自动化项目里PLC程序的结构直接影响着后期维护和扩展成本。最近用博途V17折腾了一套S7-1500控制系统把SCL和梯形图混着用出了点新花样。比如伺服轴控制模块用梯形图搭急停和使能的基础逻辑SCL写速度曲线生成算法两种语言嵌套调用毫无障碍。V90伺服走Profinet通讯时直接挂到PLC的Profinet网络里。硬件组态里拖个GSD文件就完事关键在工艺对象的参数配置。这里有个坑加速度参数单位是mm/s²还是转每秒平方要看编码器类型。程序里调用MC_Power使能轴的时候顺手加个上升沿检测防止反复触发IF #Axis_OK AND NOT #Last_Status THEN MC_Power( Axis:V90_1, Enable:TRUE, Enable_Positive:TRUE, Status#Status); END_IF; #Last_Status : #Axis_OK;发那科机器人那边通讯更野直接拿个DB块当共享内存。建个全局DB前20字节放控制命令后100字节塞坐标数据。机器人端每隔50ms过来取数PLC这边用SCL的ARRAY[1..6] OF REAL存六轴坐标转换成ASCII时注意小数点位数别让机器人报格式错误。处理多Profinet从站最怕某个节点抽风。在OB1里塞个巡检程序轮询所有从站的诊断信息。用GetIMData函数抓模块状态异常时直接把对应设备的输出清零防止误动作。这里用个结构体数组管理从站TYPE Slave_Status : STRUCT IP : STRING[15]; Health : BOOL; LastError : DWORD; END_STRUCT; END_TYPE VAR Slave_List : ARRAY[1..8] OF Slave_Status; END_VAR扫码枪走RS232接在CM 1241模块上配置成自由口模式。重点在接收中断里处理数据帧用FIND函数定位起始符星号(*)和结束符回车。实测某些国产扫码枪会多发个空格符得在字符串处理时Trim掉。数据转换直接用STRGTOChars转成字符数组再处理。西门子博途1500SCL程序和梯形图两者结合编程包括西门子v90伺服profinet通讯控制发那科机器人profinet通讯控制多profinet io从站扫码枪串口通讯触摸屏类似配方功能多行参数显示模块化结构化编程方式整体综合性好出售的是plc程序和触摸屏程序触摸屏的配方功能搞了个骚操作用Excel生成CSV文件通过U盘导入到屏里。HMI画面上用List View控件显示参数表搭配滑动条实现百行数据浏览。每个配方条目对应PLC里的UDT结构体修改时临时存到缓冲区确认后再写入DB块。模块化编程方面把整条产线拆分成上料、加工、检测三个大FB。每个FB内部又分通讯子模块、运动控制子模块通过接口参数传递数据。比如加工模块的输入参数包含伺服目标位置和扫码枪数据输出带着成品质量标志位。调试时直接屏蔽某个FB的调用其他模块照样能跑。这套程序最大的优势在扩展性——新增设备时只需复制粘贴功能块改改硬件地址就能用。上周刚给客户加了两个拧紧轴从复制程序到调试完成只用了三小时。所有IO点的注释都写在DB块里维护人员点开变量就能看到物理位置标签省得翻图纸。源码包里有37个FB、24个DB和定制好的HMI模板拿博途V17直接编译就能烧录。注意修改设备IP的时候别动到PROFINET子网配置之前有人改错导致机器人失联两小时。程序架构支持最多32个伺服轴和16个从站扩展该踩的坑都写在技术文档里了。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2503518.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!