气动 目的: 本活动旨在向您介绍气动系统中使用的一些组件。气动涉及通过使用压缩气体来传递能量,从而控制机械的运动。使用气动系统的装置很多,例如喷漆设备、千斤顶锤、凿岩机、施工土钉支护设备、食品加工设备、冷饮柜、管道机构和各种工业设备等。气动装置由于其简单的设计、可靠性和安全性而受到欢迎。 本节你将学习如何使用慧鱼的气动组件。 设备: 过程: 电磁阀通过双面胶带连接到30mm的梁上。这样做允许您将电磁阀连接到结构上,使其保持稳定。参看下图: 上图中这个电磁阀是一个三位二通电磁阀,它允许流体从一个端口进入,并从另一端口排出。三位二通电磁阀名字中的“三”代表有3个端口,从电磁阀的外观上我们可以看到两个端口(1和2),第3个端口隐藏在电磁阀的底部覆盖物之下。当压缩空气从端口3排出时,该覆盖物起到消声器和扩散器的作用。 当电磁阀得电时,端口1和端口2导通。当电磁阀断电时,端口2和端口3导通。 下图是双向活塞缸,压缩空气通过软管进入气缸,推动活塞向上运动直到气缸顶部。 我们将软管与电磁阀连接,通过控制电磁阀的得电或断电来控制是否将空气沿软管送入活塞缸。如果在双向活塞缸另一侧端口也接入另一组气动软管和电磁阀,这样就可以控制活塞的双向运动。 参考下图,在本实例中,我们将活塞缸安装到空气压缩机的上面。 空气压缩机是空气动力泵。对于较大的气动系统,一般使用一个储气罐来保持空气压力,这样情况下,压力可以保持的相当稳定。如果没有储气罐,当气缸工作时,您会听到压缩机发出的声音有一些变化。 在处理气压时,我们希望有一个恒定的压力。空气压缩机的运行电压为9V,因此我们将使用TXT控制器底部的9V +输出和I8的接地引脚为压缩机供电。参考下图: 本例中,为了控制电磁阀,我们将其的两根导线接入到TXT控制器上的M1端口。 连接各组件的气动软管是灵活的,但是需要使用接头来保护两端的组件。与空气压缩机连接的接头是灰色的,而电磁阀的接头是白色的。参看下图: 气动系统整体的组件连接示意图如下: 我们使用一个开关来控制气体是否流入到活塞缸。将开关以常开触点的接法接到TXT控制器上的I1输入端口。 本实验整体示意图如下: 现在我们开始进行编程,将以下模块拖拽到编程窗口中。 右键单击“电机输出(motor output)”模块并调整其属性设置。选择“电磁阀(solenoid valve)”并选择OK,模块上的图标将会发生改变。 参考下图编写你的程序: 在线运行上面的程序 ,观察实验效果。你可能会发现活塞缸中的推杆被推出后不会发生回缩。如果我们将电磁阀的另一侧端口也接入一组软管和电磁阀,并通过另一个开关来控制这一侧的通断。那么试着写一个程序来通过两个电磁阀来控制双向活塞缸中的推杆既可以伸出也可以回缩。 下面我们来介绍另一种弹性活塞缸。 上图是弹性活塞缸(内置有弹簧),端口1既可进气也可出气,端口2只有出气。我们用这个弹性活塞缸替换上面实验中的双向活塞缸,当电磁阀得电时,活塞杆被推出,当电磁阀断电时,由于弹簧的作用,活塞杆可以自动收回。 编码电机 基础知识: 慧鱼电机的内部实际上是一个永磁直流电机。 电机本身由两个永磁体组成,在它们之间建立磁场。 在磁场内部,我们放置一根可以自由旋转的导线。这个轴被称为电枢。通过电枢导线的电流引起磁场的产生。金属丝缠绕在一系列分割板上以集中磁场。 电流通过左侧红色圆圈中的两个刷子。这些电刷接触衔铁上的换向器,使电枢在磁场中旋转。 电动机有各种尺寸,但它们都是通过旋转磁场来工作的。虽然它们能非常有效地工作,驱动机械运动,但是当你试图精确地控制运动,并想知道确切的位置信息时,还是会遇到一些问题。为了克服这个问题,我们开始计算电动机的转数。 慧鱼编码电机是一端为齿轮输出轴的直流电机,转矩增大时,该齿轮输出轴的转速会减慢。 齿轮箱显示在下图中的右侧。你可以看到连接到输出轴的齿轮系。 在另一端有一个电路板。该电路板具有霍尔效应传感器,通过检测黑色旋转磁铁的磁场来计数每一次旋转。 编码电机的接线使用和普通电机一样的红绿导线(控制正反转和电机转速),但通过编码电机里的传感器,我们可以更加精确地控制电机。通过计算转数,我们可以控制编码电机转动的次数。 简单的描述一下,如果我们想控制机器人车回到同一个地方,我们可以计算从起始点去到某个地方所需要的电机转动次数,然后进行相反的次数控制,这样就可以使机器人车回到我们开始的地方。 编码电机中的传感器(编码器)是需要独立电源(9V)才能工作的有源传感器,编码器的接线有一个单独的线束。 上图中,蓝色接插件的线束(含有三根线)是与编码电机上的编码器进行连接的。其中,红线的是接9V电源,绿线是传感器的地线。黑线是编码器信号线。 典型的接线如下所示。电机左右两侧的两根红绿导线连接到M1。传感器独立线束中的红线连接到9V +,绿色线连接到C1的接地端,黑色信号线连接到C1。C1是一个计数器输入端口,控制器通过这个端口对脉冲数进行计数。不论电机是正转(CW)还是反转(CCW),C1都是进行正数计数。 这里需要注意的,如果编码电机接入M1,那么它上面的脉冲器的黑色信号线就要接入对应的C1,以此类推,如果编码电机接入M4,那么它上面的脉冲器的黑色信号线就要接入对应的C4。 设备: RoBo Pro软件 搭建“发现者机器人套装(TXT Discovery Set)”中“机器人车(mobile robot)”模型,参照拼装手册中第24页的搭建步骤,并在其上加装一个开关,开关以常开触点的接法接入到控制器的I1端。 过程: 上图中,我们将控制左右轮的两个编码电机分别接到M1和M2,对应的,M1编码电机上的独立线束中的黑色信号线接到C1,M2编码电机上的独立线束中的黑色信号线接到C2。将开关接到I1输入口。 为了调试时的方便,我们用慧鱼的结构件搭建一定高度的支架,将小车模型架高,以便在测试电机的时候小车不会在地面上随便移动。 现在打开RoboPro软件,创建一个新文件。将“Enviroment(环境)”设置为“ROBO TX/TXT Controller”,将使用级别设置为“Level 3:Variables (变量)”。 点击工具栏中的“COM / USB”,设置连接方式为USB连接TXT控制器。 每当有传感器或者执行器连接到TXT控制器时,最好在工具栏中中打开“Interface Test(测试接口板)”工具,测试传感器的设置是否正确以及是否能提供正确的信号输入,同时在这个工具面板中我们还对执行器(一般是电机、灯)进行测试以排除硬件连接上的问题。 如上图所示,当你点击M1旁边的CW或CCW时(这时小车一侧的轮子也会开始转动),你会注意到C1旁边的计数文字框中的数值发生变化,同理,点击M2旁边的CW或CCW时,C2旁边的计数文字框中的数值也发生相应的变化。 点击STOP,停止电机,这时你会看到电机从启动一直到电机停止,C1一共记录了多少个脉冲数,点击计数文字框旁边的Reset复选框,可以进行清零,也就是重置计数器。对计数器进行清零可以允许你准确的记录小车从你想要的位置开始 ,运行到你想要它停止的位置所行进的实际“距离”(脉冲数)。 编程 将以下三个模块拖拽到编程窗口中。 右键单击“Advanced motor control(高级马达控制)”模块。这个模块专门用于控制编码电机。在其属性面板中我们不仅可以开启或关闭电机,还可以设置两个电机之间的同步。在“action(动作)”标签中选择“synchronous distance(同步同距离)”,然后将“speed(速度)”设置为8,“distance(距离)”设置为200,M1和M2两个电机的转向均设置为CW。参看下图。 当你选择OK退出后,你会看到这个模块已经改变了外观。这个指令集的作用是命令两个编码电机向前移动200个脉冲。 按照下图编辑程序。 在线运行上面的程序,你会发现什么现象?如果你将距离脉冲数从200改为2000会发生什么?或者如果你改变其中一个电机的运行方向,再次运行程序时会发生什么?你会发现程序启动后,电机仅仅“动”了一下,这个程序就自动结束了。 现在在编程窗口中添加一个“wait for input(等待输入)”模块,右键单击该模块,打开其属性设置面板。 在属性面板中,我们将“wait for(等待)”选项设置为“1”。将“digital input(数字输入)”选项设置为“M1E”。 M1E这个信号是一个内置信号,当我们为编码电机设置了脉冲数后,当电机启动运转并达到了你所指定的脉冲数时,这个内置的“M1E”(位置到达信号)就会从数字“0”变为数字“1”。M1E这个位置信号是监测的C1口上的脉冲读数,以此类推,M4E这个就是监测的C4口上的脉冲读数。 点击属性设置面板上的“OK”退出,你会看到该模块的图示发生变化。 参照下图再次编辑你的程序: 再次运行你的程序,观察小车车轮的运转情况,这时你会发现小车如你希望的那样开始运行。如果在CW或CCW时小车两侧的车轮并不是按照同一个方向运转的,那么你可以在调换电机上的红绿两个导线的接线位置。 现在,你可以将小车从支架上取下,放在坚硬平滑的地面上,以便观察实际运行效果。你可以测量出编码电机在200个脉冲数的设置下,小车实际的前进距离。 这里我们需要说明一点,有的时候,我们会在一个程序中既使用“Advanced motor control(高级马达控制)”模块,又使用“motor output(马达输出)”模块,这时在两种控制模式切换之间我们就要使用“stop(停止)”这个命令。参考下面的程序: |