跳转到内容

机器人/设计基础/设计软件

来自维基教科书,开放世界中的开放书籍

机器人: 设计基础: 设计软件


在设计你的机器人时,有很多程序可以帮助你。从一个简单的工具打印轮式编码器,到CAD绘图程序,再到机械模拟程序。

例如,AutoCAD。这种软件用于将草图转换为专业化的漂亮图纸。这种类型的图纸是标准化的,以便于阅读。(这意味着每种不同类型的线都有特定的含义。实线是可见边,虚线是隐藏边,线-虚线-线是中心线。标准还包括尺寸标注方法和图纸中呈现的视图类型。)当然,你可以自由使用自己的标准,但是使用工业标准,如ANSI或ISO,可以更容易地与世界各地的人分享你的计划。虽然使用2D软件绘制图纸可能有点繁琐,但结果通常比使用3D实体建模软件更好。实体建模器仍然存在将3D模型转换为2D图纸并添加符合标准的适当标注的问题。

实体建模

[编辑 | 编辑源代码]

首先

例如,SolidWorks或Pro/Engineer Pro/Engineer (维基百科:Pro/ENGINEER)。一种新的绘制零件和机器的方法。使用实体建模,你可以在3D中“构建”零件,将它们组装在一起,然后让软件生成2D图纸(听起来比实际操作更难)。与2D CAD程序相比,最大的优势是你可以看到完整的零件/机器,而无需实际在现实生活中进行构建。错误很容易在模型中找到并纠正。这些3D模型还没有完全标准化,尽管存在数字数据的标准。目前,此软件生成的2D图纸并不完全符合工业标准。2D纸质图纸仍然是行业中首选的沟通工具,意图的清晰度非常重要。实体建模软件倾向于生成过于复杂的图纸视图,并使用过于简化的尺寸标注方法,这些方法可能无法正确传达零件或组件的配合、形状或功能。

气动和液压模拟

[编辑 | 编辑源代码]

费斯托 有气动和液压模拟程序的演示版本。寻找FluidSIM Pneumatiek和FluidSIM Hydraulica。(选择国家; 点击工业自动化; 并使用右侧的搜索栏。)
局限性: 无法保存或打印。大部分教学资料不包含在内。

IRAI 有免费的电气/气动和液压模拟软件演示版本: AUTOMGEN / AUTOMSIM。转到下载 / AUTOMGEN7。

原理图捕获和PCB

[编辑 | 编辑源代码]

绘制电子原理图和设计印刷电路板 (PCB) 的软件。这些软件包包含用于绘制原理图的软件、带符号的库和用于绘制PCB的软件(带自动布线器)。

不按特定顺序

  • 免费软件: Eagle 通常被初学者用于他们的项目,因为免费提供了一个有限版本。工具集很好地集成,并拥有庞大的业余爱好者用户群。但是,一旦你超越了基本设计,就需要付费购买完整版本。
  • 开源: 开源gEDA 项目 开发了一套成熟的电子设计应用程序,包括: 原理图捕获程序、属性管理器、支持超过20种网表格式的网表器、模拟和数字仿真、带自动布线器的PCB布局和Gerber 查看器。该项目始于1997年,目的是编写对个人机器人项目有用的EDA工具,但截至目前,这些工具也被业余爱好者、学生、教育工作者和专业人士用于许多不同的设计任务。该套件在 Linux 和 OSX 上运行效果最佳,尽管一些应用程序的 Windows 版本已经发布。
  • 开源: Free PCB 是一款成熟的仅限 Windows 的开源PCB绘图工具。

µ控制器

[编辑 | 编辑源代码]

编程语言

[编辑 | 编辑源代码]

µ控制器可以使用许多不同的编程语言。

  • 汇编: 每个µ控制器都可以用汇编语言编程。但是,µ控制器之间的差异可能很大。汇编语言提供了µ控制器最大的功能,但这种功能也伴随着代价: 难以学习,并且几乎没有代码重用。
    汇编代码本质上是翻译后的机器代码。它只提供处理器的指令集: 加、减、可能乘、在寄存器和/或内存之间移动数据、条件跳转。没有循环、复杂的选定或内置I/O,如C/C++、Basic、Pascal等。
    缺点是你必须自己实现所有内容(即使对于最简单的程序来说,也是大量工作)。
    优点是你必须自己实现所有内容(程序可以在速度和大小上都非常高效地编写)。
    这种语言适用于高级用户,通常只用作对紧密循环中代码的优化,或者将有限设备的性能推到极限。

    学习它的理由
    • 教你如何在最低层级上了解计算机的工作原理。
    • 提供高速代码,消耗的内存少。

      避免它的理由
    • 用途有限。
    • 不可移植。
    • 很难掌握。
      免费软件: AVR
  • C: C提供了强大的功能,但比汇编语言更具可移植性。大多数µ控制器都有可用的C编译器。µ控制器之间的差异在这里较小,除非使用硬件。
    学习C比学习汇编语言容易得多,但C并不是一种容易从头开始学习的语言。但是,如今有许多关于这个主题的非常好的书籍。
  • 基本:对于许多微控制器,都有可用的特殊 Basic 版本。这是编写微控制器代码最简单、最快的方法,但您需要牺牲一些功能。不过,现代 Basic 编译器可以生成非常出色的代码。
    • 有限的免费软件/付费软件:Bascom AVR 非常好的 AVR Basic 编译器。限制为 4Kb 程序。也有适用于 8051 微控制器的版本。
    • 有限的免费软件/付费软件:XCSB PIC Basic 编译器。精简版。不支持 32 位整数和浮点数。(OS/2 WARP, Win95, Win98, Win2K, XP 和 Linux)
  • Forth
    • PFAVR (GPL) 需要外部 RAM。
    • ByteForth 荷兰语,无需外部 RAM,还有用于 Ushi 机器人项目的构建书籍(目前仅限荷兰语)。

进一步阅读

程序员

[编辑 | 编辑源代码]

编写完程序后,您需要将其加载到微控制器中。如果您使用 C 或 Basic,您需要对其进行编译。然后使用编程器将代码上传到微控制器中。最后一步有几种不同的方法。

  • 外部编程器:这是一种连接到 PC 的设备。您需要将微控制器 IC、EEPROM 或其他存储器 IC 插入其插座中,并让 PC 上传代码。然后将 IC 插入电路中并对其进行测试。在调试后更新程序时可能很耗时。
  • ISP 在线编程:带有微控制器的板具有一个特殊的连接器,用于连接到 PC。连接电缆,下载代码,测试并重复。更现代的方法。唯一缺点:它会占用一些板空间。并非所有微控制器都支持此功能。
  • 引导加载程序,也称为“自编程”:CPU 通过任何可用的 PC 连接(不需要特殊连接器)接受新程序,然后对其自身进行编程。并非所有微控制器都支持此功能。您还需要其他编程方法,才能将初始引导加载程序编程进去(告诉它要监控哪个连接器以获取新程序、波特率等)。

调试器

[编辑 | 编辑源代码]

现代微控制器具有片上调试硬件,称为 w:JTAG

各种工具

[编辑 | 编辑源代码]

查看 此网站 以获取

  • Motion Applet – 用于机器人运动的差动转向系统的路径建模。
  • Encoder Designer – 用于编码器轮模式的设计工具。(Wikipedia:旋转编码器
  • RP1 – 移动机器人模拟器。
  • Map Viewer – 用于移动机器人的地图工具。

以及用于快速构建机器人算法的“实验机器人框架”。[1]

进一步阅读

[编辑 | 编辑源代码]
  • CAD & Linux 列出了许多在 Linux 下运行的 CAD 工具,其中一些是 GPL。
  • Linux 在线:CAD/CAM 列出了许多在 Linux 下运行的 CAD 工具,其中一些是 GPL。
  • 实用电子学/PCB 布局 提供了有关使用 PCB 设计软件的更多信息。
  • Urbiforge 提供了 Urbi 的免费下载链接以及有关如何使用 Urbiscript 的教程。Urbi 是 AGPL。
华夏公益教科书