最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

《机器人技术》实验指导书

来源:动视网 责编:小OO 时间:2025-09-27 21:42:06
文档

《机器人技术》实验指导书

《机器人技术》实验指导书适用专业:机械电子工程课程代码:150106379学时:4学分:编写单位:机械工程学院编写人:杨强审核人:审批人:实验一CDS5516舵机实验一、实验目的和任务1.掌握CDS5516舵机的工作原理;2.掌握CDS5516舵机的总线通讯协议;3.了解掌握CDS5516舵机的编程调试环境RobotServoTerminal;4.掌握CDS5516舵机ID号、波特率以及查找模式的设置方法。5.完成舵机位置变化(150-700),速度变化(230-330)时的位置、目标位置时间
推荐度:
导读《机器人技术》实验指导书适用专业:机械电子工程课程代码:150106379学时:4学分:编写单位:机械工程学院编写人:杨强审核人:审批人:实验一CDS5516舵机实验一、实验目的和任务1.掌握CDS5516舵机的工作原理;2.掌握CDS5516舵机的总线通讯协议;3.了解掌握CDS5516舵机的编程调试环境RobotServoTerminal;4.掌握CDS5516舵机ID号、波特率以及查找模式的设置方法。5.完成舵机位置变化(150-700),速度变化(230-330)时的位置、目标位置时间


《机器人技术》

实验指导书

适用专业:   机械电子工程                    

课程代码:    150106379     

学时:   4     学分:        

编写单位:  机械工程学院    

编 写 人:     杨  强       

审 核 人:                  

审 批 人:                  

实验一  CDS5516舵机实验

一、实验目的和任务                  

1. 掌握CDS5516舵机的工作原理;

2. 掌握CDS5516舵机的总线通讯协议;

3. 了解掌握CDS5516舵机的编程调试环境 Robot Servo Terminal;

4. 掌握CDS5516舵机ID号、波特率以及查找模式的设置方法。

5. 完成舵机位置变化(150-700),速度变化(230-330)时的位置、目标位置时间变化曲线,以及位置、速度时间变化曲线。

二、实验仪器、设备及材料

1. 多功能调试器(含 USB AB 线)一套;

2. 舵机(任意 ID 号)一个、舵机线两条;

3. 12V 电源一个;

4. PC机一台。

三、实验原理

CDS5516 数字舵机是“卓越之星”的主要执行器,它易用,可靠,并且适用于各种构型。CDS 系列机器人舵机属于一种集电机、伺服驱动、总线式通讯接口为一体的集成伺服单元,主要用于微型机器人的关节、轮子、履带驱动,也可用于其他简单位置控制场合。CDS5516的实物如图1.1所示。 

图1.1 CDS5516 数字舵机实物图

1.总线通讯的特点 

CDS5516 采用半双工串行异步总线通讯,控制器可以通过一个 UART 接口,控制多达255254个的 CDS5516。这是什么意思呢?我们借用现实中的一个例子来解释。 

某学校接到上级要来视察工作的通知,校长为了给领导留个好印象,决定举行一个隆重的欢迎仪式。他让宣传部编排了一些欢迎动作,这些欢迎动作需要10个方阵的学生共同表演,并且需要步伐协调,每个方阵由一个老师带领,所有的方阵由宣传指挥。带队老师和都发一个对讲机,校长在如下几个要求。 

(1) 的对讲机调在讲话模式,带队老师的对讲机调在接听模式。

(2)统一发布方阵的动作指令,比如 A 方阵下蹲、B 方阵摇手、C 方阵站立等。每个带队老师都能听到这些命令,A方阵带队老师只关心与 A 方阵有关的命令,不理会和 B 方阵有关的命令,否则动作就乱套了。同样,其他方阵的老师也只关心自己方阵的命令,除了要求所有方阵都执行的指令之外。 

(3)命令只能由发布,任何带队老师不能给其他带队老师发布动作命令。 

(4)带队老师不能随便将对讲机调为讲话模式,向咨询事情,否则大家都调为讲话模式,就唧唧喳喳地成了一锅粥了。只有在要求回答的时候才能回答,回答完毕后立刻将对讲机调回接听模式。 

某个风和日丽的日子,领导终于来了。按照剧本对方阵老师下命令:“所有方阵听指令,我先发布各个方阵的动作,各个方阵记住自己的动作之后先不执行,等我说执行,所有方阵一起执行。现在开始,A 方阵向前走 5 步,B 方阵摇手,C 方阵放气球……,现在所有方阵执行动作。” 欢迎仪式动作整齐,配合默契,步伐协调,获得了领导的大加赞赏。 

总线是指能为多个功能部件服务的一组信息传输线,它是计算机中系统与系统之间,或者各部件之间进行信息传送的公共通路。它由一定的物理线路和接口、数据协议规范所构成。 

(1) 和各个带队老师的对讲机就是这样的物理线路,它让指挥者和执行者之间的通信成了可能。校长发布的几个规定就是总线协议,这个协议让总线不会出现冲突、紊乱,让通信能够正常完成。CDS5516的半双工串行异步总线的物理线路是舵机线、UART接口等。

(2) 发布命令,其他带队老师只能接受命令,不能发布命令,因此我们可以称为主机,其他的带队老师是从机,这个总线上只能有一个主机,否则多人发布命令会导致带队老师(从机)不知道听谁的命令好。从机可以有很多,现在有 10 个方阵,如果欢迎仪式的剧本复杂点,可能需要 255254个方阵也不一定。在 CDS5516 的总线上,“创意之星”控制器就是主机,发布 CDS5516 需要执行的命令,比如 ID 为 1 的舵机转 50°,其他舵机不动。CDS5516就是从机,这个总线可以串联很多 CDS5516,如图 1.1所示。 

(3) 这个总线是半双工总线,在说的时候,带队老师只能听,带队老师要说话必须将接收机调为讲话模式,需要调成收听模式,带队老师说完之后需要立刻切换为收听模式,否则会影响发布命令。“创意之星”控制器作为主机,发布 CDS5516 的动作指令,舵机在控制器要求应答时才发送应答数据,发送完成后立刻将自己的接口状态调整为接收状态。 

(4)每个方阵都有自己的代号,这就是从机的ID(地址),主机发布的命令所有从机都可以接收到,但从机只响应和自己ID匹配的命令。CDS5516都有自己的ID号,出厂默认都是1,可以使用 Robot Servo Terminal软件进行修改,具体操作请查阅《Robot Servo Terminal使用说明》。 

(5)可以让带队老师逐个执行动作,比如让A方阵先转向,再让B方阵蹲下,也可以让所有的方阵记住他们要执行的动作,然后同时执行,这样效果会比较整齐。“创意之星”控制器也可以让 CDS5516 工作在上述两种模式,这是由总线协议规定的,可以给 1 号 CDS5516下达转 50°的命令,给2号舵机下达转 30°的命令,然后下达一个命令让所有总线上的 CDS5516同时开始执行刚才发布的命令,详细协议可以查阅《CDS5516数据手册》。 

通过上述的例子应该已经了解了 CDS5516 的半双工异步串行总线的意思及其特点。那么总线式的机器人舵机和 R/C 舵机相比有什么优点呢?我们再用上述例子来说明。R/C 舵机不是总线式的,只能直接连到控制器上,并且占用一个专有端口。这就要求必须长10张嘴,拿着10个对讲机才能给10个方阵下命令。我们如果要控制20个R/C 舵机,则您设计的控制器必须具备20个 R/C 舵机接口。但总线式舵机不一样,只有一个 CDS5516接口,理论上就能控制 255254 个CDS5516。为什么说是理论上呢?CDS5516是需要消耗电能的,在工作的时候最高可能有2000mA的电流需求,如果在这个总线上接入255254个舵机的话,同时工作起来,总线上的电流将达到500A的可怕程度。实际上,我们也不可能搭建一个具有255254个舵机的构型。

2.CDS5516 的使用 

CDS5516 采用半双工串行异步总线进行控制,每个舵机都有自己单独的ID号,在机器人构型搭建时需要对ID号进行配置,以免机器人的某些关节的ID号重叠。出厂的CDS5516 默认 ID 为 1,在“卓越之星”包装盒里有 CDS5516  ID 编号的不干胶,设好ID后请将不干胶粘贴到舵机后盖上,避免遗忘。 

CDS5516 有专用的调试环境 Robot Servo Terminal,在这个环境下,可以设置舵机ID、波特率、工作模式、速度、角度、电压等。

CDS5516 采用总线式通讯,可以串联使用。使用 R/C 舵机时我们一直很苦恼,如果我们设计的构型有 20 个舵机,我们需要把 20 根线都接到控制器,整个机器人会被长短不一、颜色各异的线所包围缠绕。CDS5516 让我们摆脱了这种窘境,我们可以将“六足爬虫”每条腿上的 3 个 CDS5516 串联在一起,再连到控制器上。我们也可以将机械手的 6 个关节串联成一串,最后用一根线接到控制器上,整个走线非常简单、清晰,可靠性也高很多。 

需要注意的是:每个 CDS5516 需要使用不同 ID;每串 CDS5516 的数量不能太多,最好是 6 个以下。正常工作下单个 CDS5516 的电流可能达到 500mA~1A,堵转电流可达到 2.5A,单组 6 个 CDS5516 的工作电流可能达到 3~8A。这样的电流会让舵机线发热,并产生比较大的电压降,最后一个CDS5516 可能因为沿途舵机线的分压而导致工作电压过低,CDS5516在电压过低时会出现复位、数据通讯不正常等状况。 

3.CDS5516 的自我保护 

CDS5516 还有其他的功能,诸如角度、扭矩等。在您搭建机器人过程中,这些功能很是重要,某些时候您需要根据构型进行重新配置。 

在使用传统 R/C 舵机时,我们经常遇见舵机长时间卡死,导致过热烧毁的现象,这是舵机自我保护功能不完善的一种表现。在实际使用过程中,每一个舵机的使用条件都是不一样的,有些舵机的使用环境非常良好,有些则是工作条件恶劣。比如机械手根部关节,负载远远高于机械手爪。热、过压、指令错误等就会发出报警信息,甚至直接卸载以保护舵机。如表 1-1 所示,

表1-1 CDS5516 保护状态说明表

名称详细说明
0-
指令错误收到一个未定义的指令或ACTION前未收到REG WRITE指令

过载位置模式运行时负载大于最大输出扭矩
校验和错指令校验和错误
指令超范围指令超过指定范围
过热温度超过指定范围
角度超范围角度超过设定范围
过压欠压电压超过指定范围
CDS5516定义了 7 种错误、危险的工作状态,您可定义 CDS5516 对这 7 种工作状态的应对措施,比如报警、指示灯闪亮、卸载等。 

注意:上文提到的“卸载”这个概念,我们可以将其理解为“切断扭矩输出”。CDS5516卸载进入保护模式,意思是 CDS5516 由于出现错误工作状态,进入保护模式,切断舵机的扭矩输出,舵机处于没有力量的状态。卸载这个概念在接下去的章节里还会重复出现。 

我们可以对以上的保护措施进行参数调节,以达到适合使用条件又能保护 CDS5516 的目的。主要有以下 4 个方面。 

(1)角度。CDS5516 在舵机模式下,有效角度控制范围是 0~300°,对应控制量为0~1023。在某些运用场合,我们可能需要舵机的转角,比如舵机转过200°之后可能出现卡死,就需要将角度设置为0~682 控制量 682 对应角度 200°),当我们的控制指令在 0~682 之间,舵机能够按照给定的指令运动;指令如果超过 682,舵机将保持到 682 位置,不会往更高角度运转。 

(2)电压。我们可以设置CDS5516 的工作电压范围,由于硬件设计的,CDS5516的工作电压是 6.5V~10.5V,低于 6.5 V  CDS5516 将不能正常工作,高于10.5V会烧毁CDS5516。设定好电压之后,当 CDS5516 上的加载电压高于或低于此范围舵机将会置位于错误标志位,软件的“电压超范围”指示灯会点亮。 

(3)温度。CDS5516 能够检测自身工作温度,温度过高可能会烧毁舵机。我们可以设置正常工作温度范围,当 CDS5516 检测到温度过高后,舵机将会强制卸载停止工作。

(4)转矩。“转矩”了 CDS5516 的最大工作电流,起到 CDS5516 的最大输出扭矩的作用。在机器人手掌关节或需要长时间堵转的场合常常用到这个功能,默认为最大值 1023,即为最大扭矩输出。通过扭矩大小,可以让机械手爪能够抓起草莓,而又不会将草莓捏碎。

4.CDS5516 的调试设置软件 

CDS5516 的基础参数设置、保护参数调节、性能测试等都可以通过 Robot Servo  Terminal软件(如图 1.2 所示)来实现。

图1.2 Robot Servo Terminal调试界面图

四、实验步骤

1. 安装 Robot Servo Terminal 2.1.10.330_Setup.exe 软件;

2. 使用 USB 线连接多功能调试器和 PC 机,使用舵机线连接 LUBY 控制器和舵机,并使用 12 V 电源为舵机供电(如图1.3所示);

图1.3 舵机和多功能调试器连接图

3. 打开 Robot Servo Terminal 软件,软件界面如图1.4所示;

图1.4 Robot Servo Terminal 软件界面图

4. 右键单击“计算机”,依次选择“属性”→“设备管理器”→“端口(COM 和LPT)”,确定多功能调试器所在端口如图 1.5所示;

图1.5 串口端号图

5. 回到 Robot Servo Terminal 软件界面,在“Com”输入框内填入上一步获取的多功能调试器端口号,在“Baud”一栏中选择1000000(舵机通信波特率),单击“Open”按钮,可以看到连接状态由绿色变为红色,表示连接成功(如图 1.6所示)

图1.6 连接成功示意图

6. 单击“Search”按钮,软件会搜寻连接在舵机总线上的舵机并显示在表格中,如图1.7所示(图中找到一个 ID 号为 1 的舵机,实际实验可能出现其他 ID 号);

图1.7搜索舵机 ID 号示意图

7. 单击“Stop”停止搜索舵机,在“Servo  Operation”栏中填写舵机 ID 号,选择舵机模式(此处选择“Servo Mode”),左右拖动“Pos”滑动条,可以看到舵机会随着转动。

8.观察实验板上的运行结果,如图1.8所示。如不符合预期设计要求,则重复修改及下载程序,直到符合要求为止。

(a)

(b)

图1.8 实验板上运行结果

五、实验报告要求

严格按照西华大学规定的理工科实验报告格式、要求完成本次实验报告。

六、实验注意事项

实验中不允许触摸各种设备、器件、接头、电缆,不允许动各种开关。否则,自行负责、处理由此造成的伤、亡事故,并赔偿由此造成的设备损坏的经济损失。

七、思考题

简述总线型舵机的工作原理,说明在级联应用中如何识别指定的舵机。

实验二  水平关节机器手实验

一、实验目的和任务                  

1. 了解水平关节机械手的基本机构;

2. 学会机械系统自由度分析;

3. 学会使用舵机驱动机械手的方法,学会分析舵机转动角度和机械手运动之间的关系;

4. 进一步熟悉对舵机控制的方法。

二、实验仪器、设备及材料

1.  CDS5516 数字舵机三个;

2.  水平关节机械手结构件一套;

3.  LUBY 控制器一套;

4.  PC 机一台;

5.  游标卡尺、量角器;

6.  导线若干。

三、实验原理

关节机器手,是当今工业领域中最常见的工业机器人的形态之一。适合用于诸多工业领域的机械自动化作业,应用领域有装货、卸货、喷漆、表面处理等。在工业生产中使用关节机械手能够完成自动化的工作,提高生产效率,节约人力成本,但缺点是开发控制系统需要很长的周期,前期需要投入资金较多。水平多关节型机械手具有结构紧凑、安装空间小、定位准确、效率高、刚性好等优点。水平关节机械手的动力由伺服电机提供,动作速度快,可实现高精度控制,在工业领域应用广泛。

机械手控制系统是通过对驱动机械手每个自由度的电机的控制,来完成特定动作,同时接收传感器反馈的信息,形成稳定的闭环控制。控制系统的核心通常是由单片机或DSP等微控制芯片构成,通过对其编程实现实验所要求的功能。本实验搭建了一个包含多个自由度的机械手系统,通过控制水平方向的两个舵机实现机械手控制。

水平关节机械手实物如图2.1所示,二维示意图如图2.2所示。

在水平方向具有两个自由度的机器手,活动范围更大,通过控制舵机旋转来完成机械手的移动。建立数学模型如下:

设杆长分别为和,设杆与图示水平正方向的夹角为(逆时针旋转为正),杆和杆的夹角为,以杆件的固定点为原点建立坐标系,则杆件末端P点的坐标可表示为:

                           (2-1)

由方程(2-1)可知,P点的工作空间在以为半径的圆中。对于给定的P点位置,需要代入方程(2-1),反解出对应的舵机转角和,即可。

       

图2.1 水平关节机械手实物模型               图2.2 水平关节机械手示意图

四、实验步骤

1. 完成机械手相关零部件组装,搭建水平关机机械手模型。

2. 编写程序,控制下方机械臂舵机以合适的速度先顺时针转动30°,并测量实际转动角度进行比较;然后上方机械臂舵机顺时针转动45°。

关键程序: 

//机械臂由初始位置运动到原料盘上

UP_CDS_SetAngle(1, 30, 512); //使 1号电机以 0.5 r/s(即 30 r/min)的转速转动 30°

UP_CDS_SetAngle(2, 45, 800); //使 2号电机以 0.8r/s(即 48 r/min)的转速转动 45°

3. 设计从 A 点到 B 点,B 点到 C 点,C 点到 D 点,D点到 A 点的路径,编写程序控制两个舵机;

4. 观察机械手的运行结果,如不符合预期设计要求,则重复修改及下载程序,直到符合要求为止。

示例程序分析:

1.  #include "UPLib\\\\UP_System.h" 

2.  int main(void) 

3.  {

4.      /*初始化系统*/ 

5.      UP_System_Init(); 

6.      /*进入 While(1)循环*/

7.      while(1)

8.      { 

9.      UP_CDS_SetMode(1, CDS_SEVMODE);  //设置1号舵机模式为舵机模式

10.     UP_CDS_SetMode(2, CDS_SEVMODE);  //设置2号舵机模式为舵机模式

11.     /*初始化舵机角度,水平机械手移动到A点*/

12.     UP_CDS_SetAngle(1, 30, 512);  //使1号舵机以0.5 r/s的转速转动30度

13.     UP_CDS_SetAngle(2, 45, 800);  //使2号舵机以0.8r/s的转速转动45度

14.     UP_delay_ms(1000); //延时 1s,等待机械臂稳定

15.     UP_CDS_SetAngle(1, 150, 512);  //水平机械手移动到B点

16.     UP_CDS_SetAngle(2, 230, 800); 

17.     UP_delay_ms(1000);

18.     UP_CDS_SetAngle(1, 280, 512);  //水平机械手移动到C点

19.     UP_CDS_SetAngle(2, 322, 800); 

18.     UP_delay_ms(1000); 

19.     }

20.  } 

代码分析如下:

(1)UP_System.h 为 UP 库函数系统,包含该库可使编程过程简洁高效。 

(2)进入主函数后首先进行系统的初始化,以使系统正常工作。 

这里我们调用了 UP_CDS_SetMode 这个函数,我们在 Keil 环境下右击该函数名,在出现的选项中选择“go to definition of…”即可定位到定义该函数的程序段:

(3)初始化后,我们进入了程序的主要部分——While(1)循环。 

其中我们主要调用了 UP_CDS_SetAngle 函数,用上述方法我们可以了解它的功能:

可知该函数有 3 个参量,分别为电机 ID、舵机转角和舵机转速。我们要让机械臂做出相应的动作,只需按顺序控制相应的电机转动相应的角度即可。

(4)当需要控制电磁铁吸取物料时,将舵机3设置为电机模式。控制电机的正反转,实现电磁铁上下移动以吸取物料。

关键程序如下:

1.  //舵机3为电机模式,控制它正反转

2.  UP_CDS_SetAngle(3, 500, -1000);  //电磁铁下降以吸取物体

3.  UP_delay_ms(7000); 

4.  UP_CDS_SetAngle(3, 500, 1000)

5.  UP_delay_ms(7000); 

五、实验报告要求

严格按照西华大学规定的理工科实验报告格式、要求完成本次实验报告。

六、实验注意事项

实验中不允许触摸各种设备、器件、接头、电缆,不允许乱动各种开关。否则,自行负责、处理由此造成的伤亡事故,并赔偿由此造成的设备损坏的经济损失。

(1)确保各部分连接完成,才能打开电源。 

(2)接口与排线连接部分易损坏,注意对准位置,避免损坏。 

(3)务必进行初始化系统、舵机模式选择等操作,否则可能出现难以预知的错误或故障。 

(4)在完成每一个动作时注意延时一段时间,以使机械臂稳定下来。 

(5)调整舵机转速时注意其可调速范围。 

(6)注意每个舵机控制部分及其舵机号的对应关系。确认无误后方能运行程序,以免损坏设备。

七、思考题

1. 分析机械手的自由度及最大活动范围。

2. 分析机械手的手部机械结构,并思考除了本实验所采用的电磁铁抓取方式以外,在实际生活中,还有哪几种常见的抓取方式。

文档

《机器人技术》实验指导书

《机器人技术》实验指导书适用专业:机械电子工程课程代码:150106379学时:4学分:编写单位:机械工程学院编写人:杨强审核人:审批人:实验一CDS5516舵机实验一、实验目的和任务1.掌握CDS5516舵机的工作原理;2.掌握CDS5516舵机的总线通讯协议;3.了解掌握CDS5516舵机的编程调试环境RobotServoTerminal;4.掌握CDS5516舵机ID号、波特率以及查找模式的设置方法。5.完成舵机位置变化(150-700),速度变化(230-330)时的位置、目标位置时间
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top