大数跨境
0
0

如何低成本制作一个极坐标绘图仪

如何低成本制作一个极坐标绘图仪 DF创客社区
2025-06-17
1
导读:试试看

【点击上方「蓝字」关注DF创客社区,一起成为技术颜控】

极坐标绘图仪是一种利用两台步进电机,通过绳子悬挂控制笔移动的绘图机器。通过电机调节绳子的长度,实现笔的精确移动。

这款绘图仪采用便宜的零件和 3D 打印部件,结构紧凑,易于组装。主要部件包括 3D 打印件、旧自拍杆、Arduino Nano、两台 28BYJ-48 步进电机和一个舵机。

极坐标绘图仪的宽度可调,范围为 375mm 至 690mm,因此可以在很小或很大的空间内绘制不同尺寸的图案。

所需材料

  • 1 个 Arduino Nano(带 USB 数据线)
  • 2 个 28BYJ-48 步进电机(配 ULN2003 驱动板)
  • 1 个舵机
  • 2 根旧自拍杆(长度 280mm)
  • 1 个 5V 母 DC 电源插座
  • 绳子或线(用于悬挂笔)
  • 笔或记号笔
  • 绘图表面(垂直板或纸张)
  • 电源(USB 或外接电源)
  • 3D 打印零件
  • 轴承和螺丝
  • 强力胶

工具:

  • 3D 打印机
  • 迷你电钻
  • 螺丝刀套装
  • 电烙铁
  • 数字卡尺
  • 卷尺或直尺

步骤 1:组装机器

3D 打印部件分为三大部分:

主部件(电路壳体):

  • 用于安装控制电路,包括 Arduino Nano 和 ULN2003 驱动板。
  • 左右两侧各固定一根自拍杆。
  • 主体顶部和底部有矩形孔,便于舵机连线,可任选一个用于连接舵机到电路板。

电机固定部件:

  • 用螺丝将步进电机固定在 3D 打印件的腔体内。
  • 每个固定件都有孔用于穿过电机线。
  • 这些固定件将与自拍杆另一端连接。
  • 用强力胶把步进电机组件安装在自拍杆末端。

移动部件(吊舱 Gondola):

  • 由 3D 打印件、轴承和螺丝组成。
  • 用于固定笔或记号笔和舵机。
  • 舵机需用较长的线,因为吊舱会在整个绘图区域内移动。
  • 用强力胶将舵机粘在 3D 打印件上,确保舵机臂能在预留缝隙间自由活动。
  • 吊舱有两只可动臂,用螺丝连接,不要拧太紧,以便自由转动。
  • 轴承主要作为配重,确保吊舱在移动时保持稳定,也可用螺母等重物替代。

步骤 2:电路连接图(第一部分)

将 ULN2003 驱动板连接到 Arduino Nano:

X 轴电机:

  • IN4 → D2
  • IN3 → D3
  • IN2 → D4
  • IN1 → D5

Y 轴电机:

  • IN4 → A0
  • IN3 → A1
  • IN2 → A2
  • IN1 → A3

舵机连接:

  • 信号线(棕色)→ D9
  • 电源线(红色)→ 5V
  • 地线(黑色)→ GND

将两台 28BYJ-48 步进电机分别接到各自的 ULN2003 驱动板,并通过 5V 母 DC 插座为驱动板和电机供电,按电路图完成所有连接。

步骤 3:电路连接图(第二部分)

如果使用 ULN2003 电机驱动板,可以参考该电路图进行连接。

步骤 4:上传程序

下载极坐标绘图仪的源码:https://github.com/zanedrys/IPAD

  • 解压后,打开 Processing 软件,找到 Sketch Book 文件夹(文件/首选项/Sketchbook/位置)。
  • 在 Polargraph 文件夹中找到 Processing 库,将所有库文件夹复制到 Processing Sketchbook 的 libraries 文件夹中。
  • 将 Polargrapcontroller 文件夹从 Polargraph/processing-source/ 目录下移动到 sketchbook 文件夹中。
  • 将 Polargraph 库文件夹中的库复制到 Arduino 的 libraries 文件夹中。
  • 打开 Polargraph/arduino-source/polargraph_server_a1 文件夹中的 Arduino 源码。

步骤 5:配置参数

针对 28BYJ-48 步进电机和 ULN2003 驱动板,需要对 Polargraph 源码做如下修改:

  • 用 Arduino IDE 打开 polargraph_server_a1.ino
  • 在 polargraph_server_a1 标签页:
    • 注释掉第 71 行(加//
    • 去掉第 76 行的注释(去掉//
  • 在 Configuration 标签页:
    • 用 AccelStepper motorA(8, A0,A2,A1,A3); 替换掉第 96 行的 AccelStepper motorA(8, 6,8,7,9);
  • 上传 polargraph_server_a1.ino 到 Arduino Nano。

步骤 6:最终组装

  • 将绳子绑在电机轴上,使笔架(吊舱)悬挂在中间。
  • 将舵机安装在笔架上,用于控制笔的升降。
  • 确保两根绳子长度一致,系统平衡。

步骤 7:机器设置

  • 打开 Processing 2,打开 polargraphcontroller(文件→sketchbook→polargraphcontroller)。
  • 点击运行按钮启动程序。
  • 在工具栏点击 Setup 标签。
  • 调整两滑轮间距离(Machine Width)。
  • 设置机器高度(滑轮到面板底部的高度)。
  • 设置绘图区域尺寸。
  • 首先点击 Center Page 并将 Page Pos Y 设为 197。
  • 然后点击 Center Home Point,将 Home Pos Y 设为 197。

步进电机参数:

  • 根据所用滑轮和皮带设置 STEP PER REV。我用的是 28BYJ-48 步进电机,步进数为 2048。

舵机(笔)参数:

  • Pen Up Position 和 Pen Down Position 分别为舵机的抬笔和落笔角度。
  • 点击 Serial Port,选择 Arduino 所在端口,连接成功后显示绿色并显示端口号。
  • 点击 Command Queue 激活指令传输。
  • 点击 Upload Lift Range,再点击 Test Lift Range 测试舵机角度。

步骤 8:生成 SVG 文件

  • 用 Inkscape 等软件创建 SVG 文件。
  • 打开 Inkscape,点击文件→文档属性,设置宽高为 100mm。
  • 拖入图片,选择图片→转换为路径→删除原图→路径→对象转路径。
  • 文件→另存为→文件名.svg→保存。
  • 通过串口监视器或 Polargraph 控制程序将 SVG 文件发送到 Arduino。

步骤 9:运行

加载矢量图:

  • 保存设置,每次启动程序都要加载设置。
  • 点击 Input 标签,切换到主界面。
  • 手动将吊舱移动到设定的 Home 点,每次绘图前都需如此,然后点击 Set Home。
  • 设定笔位置后,点击 Set Pen Position。
  • 点击 Set Area 设定绘图区域,再点击 Set Frame to Area 完成设置。

绘制矢量图:

  • 找到任意矢量图,将其转为 SVG 格式。
  • 在程序中选择 Load Vector,调整图片大小(Resize Vector),移动图片到合适位置(Move Vector),设定打印区域(Select Area、Set Frame to Area)。
  • 最后点击 Draw Vector 开始绘图。

效果提升小技巧:

  • 使用光滑的绳子或钓鱼线来减少摩擦。
  • 添加配重来稳定笔架。
  • 校准系统来确保绘图比例准确。

步骤 10:绘图效果展示

▲ 完整演示视频

STL 文件和 SVG 文件可以选择移步原文:https://www.instructables.com/Polargraph-Plotter/下载,也可以点击文末左下角阅读原文,到DF创客社区论坛打包下载。

原项目地址:https://www.instructables.com/Polargraph-Plotter/

项目作者:Deepaksh123

译文首发于DF创客社区

转载请注明来源信息


硬件军火库

直降1400元!长按扫码了解详情👆


DFRobot官方品牌店 https://dfrobot.taobao.com/

DFRobot官方旗舰店 https://dfrobot.jd.com/


大家有什么想说的,欢迎在下方留言



往期项目回顾


用ESP32 DIY迷你贪吃蛇游戏机,唤醒你的童年记忆!


用Arduino打造一辆蓝牙遥控坦克


远程操控,精准打击!DIY一个智能炮塔!


ESP32+3D打印遥控赛车全开源!极速48km/h,成本可控自由改装


手把手教你造一个会「玩球」的平衡机器人!


点击阅读👆

【声明】内容源于网络
0
0
DF创客社区
我们是专注于创新和开源硬件开发的公司——DFRobot成立的创客社区,无论你是资深创客还是小白,这里都有你的一席之地。一个人玩自己的项目,你只是寂寞宅;一群人看你玩项目,你就是技术牛!快来分享你的项目吧!
内容 1282
粉丝 0
DF创客社区 我们是专注于创新和开源硬件开发的公司——DFRobot成立的创客社区,无论你是资深创客还是小白,这里都有你的一席之地。一个人玩自己的项目,你只是寂寞宅;一群人看你玩项目,你就是技术牛!快来分享你的项目吧!
总阅读2.1k
粉丝0
内容1.3k