基于CANopen协议的AGV控制系统设计
无需注册登录,支付后按照提示操作即可获取该资料.
基于CANopen协议的AGV控制系统设计(任务书,开题报告,外文翻译,论文18000字,答辩PPT)
摘要
基于CANopen协议的AGV控制系统设计的关键技术在于完成主控微处理器CANopen通信功能的软硬件准备,进而实现主控微处理器和伺服驱动器之间基于CANopen协议的数据通信。以下是论文重点研究的内容:
(1)分析了CANopen协议,分析了CANopen协议的4种通信对象并将其使用于AGV底层控制系统的通信过程,对CANopen子协议DS402驱动控制协议进行分析,并在通信过程中应用DS402状态机控制伺服电机的工作状态。
(2)设计了STM32F427微处理器在CANopen通信过程中需要用到的主要外设——CAN通讯接口电路,说明了其工作过程。说明了STM32F427微处理器的内部工作电路。
(3)设计了AGV控制系统中CANopen通信的软件部分,实现了SDO报文设置从节点,NMT报文管理从节点,实现了用PDO报文控制电机的程序设计,该程序通过配置从节点的DS402状态机实现。还设计了一些其他的底层控制函数。
(4)使用Kincoservo+软件对伺服驱动器的CANopen通信节点的对象字典进行配置并对关键过程进行了说明,使用Objdictedit软件对微处理器的对象字典进行配置并说明了关键过程。
关键字:AGV;差速驱动;底层控制;CANopen通讯
Abstract
The key technologies of the differential-drive AGV’s underlying control system is to prepare the software and hardware of the CANopen communication function of the main control microprocessor, and then to realize the data communication based on CANopen protocol between the main control microprocessor and the servo driver.The following part is the main content of this research:
(1) Analyzed the CANopen protocol.Analyzed and used the four communication objects of the CANopen protocol in the communication process of the underlying control system, analyzed the CANopen sub-protocol DS402 drive control protocol, and applied the DS402 state machine to control the servo drive in the communication process.
(2)Designed the main peripheral CAN communication interface circuit required by STM32F427 microprocessor in CANopen communication process, and explainedtheworking process, and explainedthe internal working circuit of STM32F427 microprocessor.
(3) Designed the software part of the CANopen communication inside the differential drive AGV underlying control system. The SDO message is used to set the slave nodes and the NMT message is used to manage the slave nodes.The programming for controlling the motor is implemented by configuring the DS402 state machine from the node and designed some other underlying control functions.
(4)Used a software named Kincoservo+ to configure the object dictionary of the servo drive and illustrated the key processes.Used a software named Objdictedit to configure the microprocessor's object dictionary and illustrated the key processes
Key Words:AGV;differential drive;underlyingcontrol;CANopen communication
论文主要内容安排
基于CANopen协议的AGV是本文研究对象,本文旨在通过CANopen通信实现AGV小车的运动控制。文章重点介绍了CANopen和CiA-DS402协议,RoBoMaster主控板的硬件原理和软件系统的设计还有实现,实现STM32微处理器和步科伺服驱动器之间的CANopen通信,实时控制AGV运动。
文章有五章,各章研究内容如下:
第一章介绍了AGV和AGV应用的重要性,说明了基于CANopen协议的AGV使用到的通信总线协议,分析了国内外对AGV和CANopen协议的研究情况,简述了说明书的组成部分。
第二章介绍了CANopen子协议、通信模型、通信方式,介绍了CANopen的四种通信对象,描述了通信协议的对象和入口,简述了本设计用到的DS-402驱动控制通信子协议。
第三章进行了STM32F427微处理器关键电路设计,介绍了芯片最小工作系统和内部工作电路原理图,说明了CAN1通信端口转换电路工作过程。
第四章说明了控制系统的程序构成,对各组成部分如初始化程序、主程序、底层驱动函数进行了详细的说明,给出了主程序流程图,从节点底层配置函数和从节点DS402协议状态机配置底层函数的流程图,简要说明了他们的工作原理。
第五章总结了设计成果,展望了课题的后续发展。
目录
摘要 I
Abstract II
目录
第1章绪论 1
1.1研究背景和意义 1
1.2国内外研究现状 2
1.2.1AGV研究现状 2
1.2.2CANopen协议研究现状 2
1.3课题研究的目的 3
1.4论文主要内容安排 3
第2章 CANopen协议分析及方案设计 5
2.1CANopen子协议 5
2.2 通信模型 6
2.3 通信方式 7
2.3.1主/从方式 7
2.3.2 用户/服务器方式 7
2.3.3 生产者/消费者方式 8
2.4 通信对象 8
2.4.1网络管理对象 9
2.4.2服务数据对象(SDO) 10
2.4.3过程数据对象(PDO) 11
2.4.4特殊功能对象或预定义报文 12
2.5对象字典 12
2.6 伺服控制协议DS-402 14
2.7 本章小结 16
第3章主控单元硬件系统设计及实现 17
3.1 主控芯片最小系统 17
3.2CAN1转换电路 18
3.3本章小结 19
第4章主控单元软件系统设计及实现 20
4.1初始化程序 20
4.2主程序 20
4.3底层驱动函数设计 21
4.3.1从节点配置底层函数 21
4.3.2从节点DS402协议状态机配置底层函数 22
4.3.3 CAN报文读取函数 23
4.4 PDO报文发送函数 24
4.5伺服驱动器对象字典配置 25
4.6 微处理器对象字典配置 27
4.7本章小结 28
第5章总结与展望 29
5.1 论文总结 29
5.2 工作展望 29
致谢 30
参考文献: 31
附录A 33
主程序部分 33
CAN1.c源文件 40
timer.c源文件 51
pdo1.c源文件 53
key.c源文件 83
define.h头文件 85
key.h 头文件 98
can1.h头文件 98
timer1.h头文件 100
pdo1.h头文件 100