论文部分内容阅读
随着科技的发展,机器人技术在各个行业得到了日益广泛的应用,已经成为自动化生产的重要组成部分。开放性、模块化是机器人发展的主要趋势。传统机器人控制系统是根据机器人要实现的功能设计完成机器人构型,在确定控制系统硬件之后从零开始设计它的控制系统软件,软件开发人员从底层开始编写控制系统的软件代码,并且当机器人的动作要求或机器人构型发生改变就必须重新开发控制系统的软件程序。这种情况下,不管是从底层开发控制系统软件还是控制系统软件的修改升级都消耗大量的人力物力和时间。所以机器人控制系统的软件模块化对于机器人的发展意义重大,它将机器人的功能在软件层次实现模块化,方便程序开发人员编写、修改、升级机器人控制系统软件程序,从而提高控制系统软件的开发效率和开发质量。本文针对常见的机器人控制系统硬件形式进行优缺点的比较,选择“工控机+运动控制卡+I/O卡”形式的机器人控制系统。根据机器人控制系统的常用功能以及机器人的常用动作要求对机器人控制系统进行了模块划分,力求做到各个模块之间低耦合。并对这些模块在功能上的要求作了说明。在Windows平台上以Visual C++作为开发工具,采用规范化设计方法和模块化思想完成了I/O模块和运动控制模块程序的编写和调试。首先,提出了根据软件模块化的方法提出软件设计的结构化、模块化并进行了实现。在MFC提供的框架上实现结构化,采用主线程、辅助线程和多媒体定时器任务同时协调工作,满足工业控制实时性要求。模块化则基于C++类的源代码级模块,将各个功能模块在程序上划分为类。其次,将机器人运动控制系统的I/O模块和运动控制模块抽象成若干了具体的I/O类和CMovement类,以简化控制操作,实现软件代码的复用。同时这些类又继承自CCmdTarget,可实现对象的序列化和接收消息。