摘要:相比较于专用的、封闭的控制系统,开放式控制系统的应用越来越广泛。同时,随着设备运动精度、运动速度的要求越来越高,具有良好通用性、可扩展性、以及高稳定性和高速处理能力的运动控制器在高速高精度控制中运用越来越广泛。本文在研究运动控制器工作原理和控制方法的基础上,研究上位机PC与工控机之间的ADS通讯方式,工控机采用的是德国Beckhoff公司的TwinCAT3软件将PC转化成的PLC(又称为软PLC)。利用Python语言进行程序设计,利用其拓展模块Pyads和ctypes中包含的函数实现上位机与TwinCAT3 ADS设备间的加工代码、坐标信息等数据传输,并对比两种读写方式的效率。读写单个变量时Pyads的开发效率高于ctypes。为了提高读写多个变量的效率利用TwinCAT3中ADS Sum-Cmd 命令批量读写数据,大大提高了传输的速度,改善了控制系统的延时性,为实现实时控制提供可能。
关键词:TwinCAT3;ADS通讯;Python;Pyads;ctypes
目录
摘要
ABSTRACT
第一章 绪论-1
1.1研究背景-1
1.2研究现状及发展趋势-1
1.3研究意义-2
1.4本文的主要内容和结构安排-2
2.1 TwinCAT3软件及PLC程序的编写-3
2.2 TwinCAT3 ADS通讯-6
2.3本章小结-8
第三章 基于Pyads的数据读写-9
3.1 Python简介-9
3.2 Pyads库-9
3.3 基于Pyads的上位机ADS通讯程序编写-9
3.4 本章小结-13
第四章 基于ctypes的数据读写-14
4.1 ctypes函数-14
4.2基于ctypes的上位机ADS通讯程编写-15
4.3本章小结-22
第五章 TwinCAT3 ADS通讯批量读写-24
5.1 ADS Sum-Cmd命令-24
5.2 ADS Sum-Cmd命令的批量读写-24
写入变量的值时程序如下:-29
5.3 ADS Sum-Cmd读取500个变量-31
5.4本章小结-33
第六章 总结与展望-34
6.1全文总结与展望-34
6.2反思-34
参考文献-36
致 谢-38