0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

管道检测机器人的制作

454398 来源:工程师吴畏 2019-08-12 10:02 次阅读

第1步:设计

管道检测机器人的制作

我们首先在CATIA V5中创建基本设计。机器人由两个分开的滑动机构组成,安装在PVC中心管上。每个滑动机构都有三个固定在圆柱形轴环上的支腿,通过一个小连杆与滑动缸连接。

滑动时,弹簧可以实现伸展和压缩运动。因此,如果腿被压缩,机器人的直径会减小。释放此压缩力后,机器人会自动伸展。在这两种机构之间,有一个电子元件的支架,呈长领状。

在我们的设计中(如上图所示),两个前腿由两个高度控制齿轮直流电动机。后腿没有马达,因为前腿足够强大,可以驱动整个机构。

第2步:工具和材料

微控制器

1xArduino Uno(任何工作)

电机控制

1x H桥(L298N)

22AWG实芯电线

220V SMD返修焊台

电源

4x 9V电池(1为电机供电Arduino和2电源)

其他电子产品

2x 12VDC电机

DPDT拨动开关(电源开关

SPDT滑动开关(用户输入)

热缩管

硬件

6x激光切割链接(电机链接与其他链接略有不同)

6x PLA小链接(已打印)

2x项圈(已打印)

2x平移元素(已打印) )

1x电子零件支架(印刷)

2x坚固的矩形弹簧(印刷)

2x电动轮销(印刷)

4x Link-whe el pin(已印刷)

2x电机衬套(已印刷)

4x 7mm轴承

18x 3mm螺栓

7x 2.5mm螺栓

7x拉链

6x机器人轮胎塑料轮

1x端部阻挡器

14x 2.5mm pgp-fasteners

36x 3mm螺母

14x 2.5mm螺母

50x 3mm垫片

1x 40mm PVC管

工具《

电钻/钻床(以及大量钻头)

激光切割机

3D打印机

钢锯

烙铁

钳子

内六角扳手

各种螺丝刀

剥线钳

C Clamp

标尺

万用表

步骤3:电机控制器

我们为此机器人制造的电机控制器基于H桥芯片(L298N)。使用该芯片,每个电机需要两个输入才能工作(如果H桥的两个引脚中的一个为高电平而另一个为低电平,那么电机将转动,但如果它反转,则电机将反向转向!)。

现在你需要控制这些电机的准确速度。您可以通过在Arduino的“HIGH”引脚上施加较低的电压来实现此目的,因为任何高于5V的电压都会产生相同的电机速度。

在将所有电子元件固定在支架上之后,我们将它们焊接到位并使用22AWG实芯电线进行连接。

步骤4:电源

为Arduino供电,使用9V堆栈。它具有三个串联9V堆栈的公共接地。

为H桥和电机供电时,串联使用3x 9V堆栈,提供27V电源。

步骤5:腿

腿是这个机器人最重要的部分,因为它们的设计决定了它们是否能够支撑电机的重量和管道的压力。我们决定从6个中选择2个支腿,每个支腿由一个电机控制,另外4个支腿使用滚子轴承,使其具有低摩擦力。

为了制作支腿,我们激光切割了6 mm宽的木板。从上面的图像可以看出,腿有两种不同的切口,这是因为一个切口用于电机驱动的腿,另一个用于正常的腿。

第6步:构建框架

腿部完成后,下一步是构建一个框架,将电机和支腿固定到位。我们通过制作合适的销/衬套(白色)来启动框架,以将电机,支腿和车轮固定在一起。

为了将电机固定到支腿上,我们使用2个螺钉进入从整个支腿穿过电机的孔,我们还使用拉链系统来固定它。

除此之外,我们还使用销钉将电机轴连接到车轮上。为了减少木材和塑料之间的摩擦,我们在支腿中心孔中固定衬套。之后,我们制作一个针(黑色)用于将正常腿连接到车轮上。

为了确保车轮自由旋转,我们在车腿内放置了一个滚柱轴承,使销可以随车轮自由旋转。然后我们用垫圈和锁紧螺母将支腿穿过轴环,将它们固定到位,让它们在螺栓上自由旋转。我们做同样的事情来固定小连杆(白色连接到腿)与平移元件和腿。最后,我们将项圈固定,以确保它们固定在中心管上。

步骤7:电子平台

我们设计了支架,以便更容易地修复所有电子元件。有一个Arduino船的地方,也在对面有一个H-briges,baterries和开关的地方。

最后,我们将Arduino和电机控制器拧入支架,我们使用拉链连接到固定开关和电池。

步骤8:连接机器人

下一步是连接所有电气元件机器人在一起我们首先将长导线焊接到电机的触点上。接下来,将腿上的花盆连接在一起。这是通过使用旧IDE电缆的带状电缆段完成的。电池接线,使它们都具有共同的接地和输入电压。输入电压连接到Arduino上的+ 9V引脚,两根信号线焊接到接头,然后连接到Arduino上的模拟输入A0-A1。

接下来,我们连接数字输出将Arduino上的引脚连接到电机控制器上的输入端。

最后,我们在中心管上钻一个孔,这样我们就可以将电缆插入管中,直到管的开口端,我们在那里固定前腿。这样做可以更容易地连接电机。然后我们通过拨动开关将每个电机电压端子连接到9V电池组。

步骤9:编程

//This program is a simple program who will use motor drives (L298N) only to make the motor going straight forward than wait and then backward.

//Note that no regu-lation is used and the motor will just go at full speed (in the case of the pipe ro- bot, due to the degrees of freedom of the project this kind of method can be applied.

int mot1plus = 2; //initialisation of the motor pin

int mot1moins= 3;

int mot2plus = 4;

int mot2moins= 5;

int mot3plus = 6;

int mot3moins= 7;

float t_init , t_now , t; //initialisation of the time variables

float t_forward =8;

float t_back = 10;

float t_waiting = 1;

int motorSpeed=0;

void setup()

{

Serial.begin(9600);//give the values of the variables if mantioned inn the code (can be delete)

pinMode(mot1plus,OUTPUT);//initialisation of the pins as output

pinMode(mot1moins,OUTPUT);

pinMode(mot2plus,OUTPUT);

pinMode(mot2moins,OUTPUT);

pinMode(mot3plus,OUTPUT);

pinMode(mot3moins,OUTPUT);

t_init=millis(); //initialisation of the time as variable and start to count

t_forward *=1000;//transformation of the time in seconds

t_back*=1000;

t_waiting *=1000;

}

void loop()

{t_now=millis();

t=t_now-t_init;// use to calcul the time in the loop

if (t《=t_forward){ //first loop the robot goes forward

digitalWrite(mot1moins,LOW);

digitalWrite(mot1plus,HIGH);

digitalWrite(mot2moins,LOW);

digitalWrite(mot2plus,HIGH);

digitalWrite(mot3moins,LOW);

digitalWrite(mot3plus,HIGH);

}

if (t》t_forward) { if (t《=t_forward+t_wait){

digitalWrite(mot1moins,LOW);

digitalWrite(mot1plus,LOW);

digitalWrite(mot2moins,LOW);

digitalWrite(mot2plus,LOW);

digitalWrite(mot3moins,LOW);

digitalWrite(mot3plus,LOW);}

}

if (t_forward+t_waiting《=t){//third loop the robot come back

digitalWrite(mot1moins,HIGH);

digitalWrite(mot1plus,LOW);

digitalWrite(mot2moins,HIGH);

digitalWrite(mot2plus,LOW);

digitalWrite(mot3moins,HIGH);

digitalWrite(mot3plus,LOW);

}

while(t》=t_forward+t_waiting+t_back){ // the code is block in this loop and the robot stop

digitalWrite(mot1moins,LOW);

digitalWrite(mot1plus,LOW);

digitalWrite(mot2moins,LOW);

digitalWrite(mot2plus,LOW);

digitalWrite(mot3moins,LOW);

digitalWrite(mot3plus,LOW);

}

}

步骤10:测试和结果

最后,是时候进行测试了。

我们测试了不同直径的机器人。第一次测试是在直径小于260mm的管道中进行的,但它太压缩而无法向前移动,它几乎不在管道内移动。

然而,它对其他直径(300mm)表现相当不错,320毫米)。此外,它被证明能够在更大的直径下工作,但作为汽车(没有压缩)。

此机器人设计用于水平圆柱形管道或略微倾斜的管道。然而,对于更大的倾斜角度或不平坦的表面,可能会有进一步的改进。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    206

    文章

    27033

    浏览量

    201393
收藏 人收藏

    评论

    相关推荐

    LabVIEW的六轴工业机器人运动控制系统

    LabVIEW开发六轴工业机器人运动控制系统 本项目开发了一个高效的工业机器人控制系统,重点关注于运动学算法和轨迹规划算法的实现和测试。LabVIEW作为一个关键技术,在项目中扮演了核心角色
    发表于 12-21 20:03

    ROS让机器人开发更便捷,基于RK3568J+Debian系统发布!

    ROS系统是什么 ROS(Robot Operating System)是一个适用于机器人的开源的元操作系统。它提供了操作系统应有的服务,包括硬件抽象,底层设备控制,常用函数的实现,进程间消息传递
    发表于 11-30 16:01

    机器人编程需要什么软件?

    机器人编程需要什么软件
    发表于 11-01 07:34

    Arduino教学机器人的使用教程

    本文档的主要内容详细介绍的是Arduino教学机器人的使用教程
    发表于 09-27 06:53

    使用Arduino和PAJ7620手势传感器制作手势控制机器人

    使用Arduino和PAJ7620手势传感器制作手势控制机器人,简单程序即可实现。小小的传感器可以识别各种手势。它采用内置的空间传感器,可以感知接近和离开的对象。
    发表于 09-27 06:17

    【开源资料】使用ESP32C3超简单制作迷你四足机器人

    用esp8266做过小四足机器人,这次用esp32C3重制了,主要的原因是C3有蓝牙可以用蓝牙遥控非常方便边,随时连接随时玩不占用手机WiFi。 而且esp32C3虽然管脚不多,但在8路舵机的控制
    发表于 09-21 11:15

    ai人工智能机器人

    的运营成本、人力成本还在不断提高(如:办公场地的租金、员工的工资、社保公积金、节假日福利等)。 如今的智能电话机器人,每天的电话拨打量可达800-1000通,相比人工提高了3-5倍,大大缩短了名单的筛选
    发表于 09-21 11:09

    基于Matlab和VR技术的移动机器人建模及仿真

    利用 Matlab 建立移动机器人的动力学模型 ,在虚拟现实 (VR )环境下 ,实时仿真移动机器人路径跟踪的运动特性 ,为基于 Internet 的机器人遥操作试验搭建了仿真平台 。 实验结果表明
    发表于 09-20 06:24

    profinet转ethernet网关连接发那科机器人配置案例

    本案例是西门子1200PLC通过PROFINET转EtherNet网关连接发那科搬运机器人配置案例。所需设备:西门子1200PLC、Profinet转EtherNet IP网关、Fanuc机器人
    发表于 08-03 17:58

    机器人上线有什么注意事项

    不要被复杂的生产线吓倒,生产线可以看成多个单独的设备或机器人,每部分完成一个功能。
    发表于 06-08 17:40

    自编程机器人,售后难做吗?

    自编程是如何完成的。 自编程其实也不是很高深的问题。 当用户给出参数时,有时也包括逻辑。 例如用户说,如果设备打开完毕,执行一个命令。 这个例子就包括了一个如果。你的智能机器人只需要生成一个
    发表于 06-08 16:20

    如何快速地让机器人投入生产

    机器人也是一种设备,它主要内容是完成一个制造的其中一个功能。 制造一个产品,可以分为几个部件。和装配几个部件。 一个部件,可以是一个模具。或者由机器人完成组成一个模具。 机器人主要完成的是一些模具
    发表于 06-06 16:18

    利用Arduino Nano制作一个四足机器人遇到HC-05蓝牙模块问题,可以用ESP8266替换Arduino吗?

    我在 Arduino Nano 的帮助下制作了一个四足机器人。但我经常遇到 HC-05 蓝牙模块的问题。所以现在我正在考虑用 ESP8266 替换 Arduino。谁能帮我这个?
    发表于 06-02 08:12

    机器人如何计算简单的运动

    模型要具备齿轮,导轨几种基本的运动原理。 要分辨基本图形,视觉模型要能分辨圆形,方形和三角形。 有了这两点,机器人就基本上能计算开模和注塑这种简单的工作了。要替代人类的工作,还要进一步学习。
    发表于 05-19 20:40

    浅谈儿童陪护机器人

    儿童陪护机器人越来越受到人们的关注,其中转动控制是其重要组成部分之一。步进电机芯片作为一种常用的控制芯片,被广泛应用于儿童陪护机器人中的转动控制。本文将从步进电机芯片的工作原理、优势和应用场景等方面
    发表于 05-11 15:12