教你如何设计一个直角坐标机器人来绘图

这个机器人,是一种绘图机器人,我们把它叫做直角坐标机器人。简单来说就是一支悬挂着的笔,通过控制它做有规律的机器运动,就可以像绘图仪一样画出图来。它不太会像我们人类这样去画画,我们也很难像它那样去画画。

下面我们来讲一下这个直角坐标绘图机器人是怎样做成的。

一、直角坐标机械臂绘图设计思路
三轴绘图仪即通过X, Y, Z三轴的步进电机协调控制绘图笔来进行图形的绘制。通过上位机(PC)来发送gcode代码,下位机(绘图仪)通过对接收到的gcode坐标代码进行解析并通过插补算法来控制各个轴的步进电机的步进进行图形绘制。
【小知识-插补算法:先建立一个平面坐标系,将我们所需要画的图形放置在该坐标系中,这样就可以确定该图形每个顶点的坐标,两个相邻的顶点之间确定一条直线,直线上各点坐标通过插补计算得到,然后画笔依次沿着这些坐标进行移动,完成绘制。】
二、直角坐标系机械臂绘图大致流程
第一步:导入图片,利用 Inkscape软件导出gcode文件;
第二步:经processing软件处理后得出图像坐标;
第三步:三轴绘图仪开始绘制图像。


一、直角坐标机械臂机械系统
该项目利用探索者平台制作。其传动系统为3个步进电机驱动的单轴传动(同步带传动结构将圆周转动转化为直线运动,通过三个单轴运动的相互配合,从而可以达到搬运或书写的目的);驱动系统采用精度较高的42步进电机;执行末端为笔架和笔(三个方向的驱动同时输出到笔支架,控制笔支架在笛卡尔坐标系的三维空间内运动)。

二、直角坐标机械臂运动学算法
这里给大家介绍一种直角坐标机械臂的运动轨迹解法,通过控制电机的转动参数,最终求解出笔和笔架运动轨迹规律。

技术原理(直角坐标系绘制图形):
① 建立直角坐标系
② 确定绘制图形在坐标系中的点坐标
③ 通过插补计算得出斜线上各点坐标
④ 沿着计算出的点坐标进行移动

三、直角坐标机械臂组装
将直角坐标机械臂传动部分进行拆分组装。【详细的组装步骤图可加QQ交流群:221964861进行获取】


一、主要使用的电子硬件
MCU-F4主控板(基于STM32F407设计)、SH-F4ST综合扩展板(包含步进电机驱动电路)、触碰传感器(直线模块限位用)、11.1v动力电池(电源)【备注:大家也可以考虑使用Arduino控制板】

二、电路连接
如下图所示进行编号,其中 X、Y、Z 分别接对应的步进电机;K1、k2、 k3 分别接对应的传感器。

与主控板对应接口如下所示:


一、控制示例
下图中main.c文件为主程序;串口接收坐标的程序见usart.c文件。烧录程序,完成后打开电源,绘图仪各轴步进电机将进行复位,复位完成后,绘图笔将到达绘图区域中心,绘图仪绘图面积为80*80mm;此时三轴绘图仪进入接收上位机指令状态。【完整的程序源码可加QQ交流群:221964861进行获取】

二、生成文字gcode文件












三、打开processing软件
① 导入gcode文件-打开processing.exe来启动 Processing 软件,启动后打开gctrl.pde文件。

② 导入gcode文件-点击运行,弹出如下的窗口。【主要命令如下,p:用来选择端口号;g:选择gcode文件;x: 停止gcode流】

③ 导入gcode文件-按下键盘上的 p : 弹出下图界面选择端口号,选择端口号,等待绘图仪复位完毕。【注意:请确保输入法是英文状态】

④ 导入gcode文件-按键盘 g 键,选择生成的 gcode文件,点击确定; 这时在结果区显示发送的坐标。【注意:请确保输入法是英文状态】

四、效果演示

