全国服务热线:
QQ913605975
您的位置:主页 > 新闻资讯 >

arduino 吸盘 机械臂

作者:和记娱乐 发布于:2020-11-17 10:33 点击量:

  前一段时间入手了一台Dobot桌面机械臂,号称是家用的工业级性能桌面机器人。这台四轴机械臂,承重500g,动作精度可达0.2mm,采用三台步进电机驱动,拥有两个角度传感器,下位机控制器采用arduino&FPGA,提供了一份功能比较齐全的用户协议。通过该协议,可以通过串口或蓝牙通信,用上位机对其进行控制。可以完成写字、雕刻、抓取、吸取等复杂动作和任务。

  作为初学者,第一步肯定是要先对机械臂进行硬件安装和调试(按照官方给的手册)。

  银色的dobot机械臂主架(默认执行机构为吸盘);电源;USB线;黑色的下位机控制盒;机械爪及配件;激光器及配件(含绿色墨镜...);毛笔;触控笔。

  安装过程比较简单,只需要将控制盒引出的两个角度传感器安装在机械臂的大臂和小臂,并且将执行末端的舵机线与控制盒引出的线相连接...

  角度传感器出厂时已经矫正,如果不放心或者想自己矫正一下,在安装角度传感器之前,要先将他们放在水平面上进行校正。矫正方法可以参见官方的文档,另外需要说明的是,角度传感器很重要,因为下位机通过它计算出执行末端的当前位置,机械臂的运动都是以这个校准后的水平面作为其动作的x-y平面,该位置信息会通过串口实时回传给上位机。如果该水平面测量不准确,会影响dobot的运动精度,比如明明只是给向前运动的信息,但是却会向上或者向下运动。

  当dobot出现以下状况时,一定要按下控制盒上的reset按钮重新测量机械臂的当前位置:

  (1)连接上USB线,但未上电,此时给dobot发送了动作指令(此时会发现只有末端吸盘的舵机会转动),机械臂不运动但是返回给上位机的位置信息已经变化成目标信息了,此时需要按下reset键重新测量。

  (4)没上电时随意运动了机械臂,上电时又不在上次断电时的位置,都可能会导致返回的机械臂位置信息不准确,影响机械臂运动精度,所以,每次上电时都按一次reset键是比较的。

  关于这个特性,博主可谓吃了不少亏。一开始也发现了返回的位置信息会由于错误运动而不正确,但没有认识到reset键的功用,走了弯路(当时的方法是,上电时保证机械臂执行末端在一个确定的位置,上电前向dobot发送一个该位置的正确坐标信息...后来发现X-Y平面不准确,向前运动会同时向下运动,于是又把角度传感器重新标定了一遍,无济于事后以为是dobot的设计问题,于是进行了实际测量和高度信息修正...直到发现神奇的reset键,才发现前边做了大量无用功)。

  现在介绍一下dobot的内置坐标系。直到dobot1.2版本,其坐标系仍然是固定的,据官方说以后会允许用户自定义坐标系。

  执行终端向前的方向为x轴正方向,向机械臂的左方运动为y轴正方向,如下图所示:

  在执行终端为吸盘时,在X²+Y²=(130mm)²(吸盘接触的水平面为机械臂底盘平面)范围内是难以抵达的。上图的最左端的点为目前版本中默认的终端位置。当Z=-10mm左右,X最远可达X=316mm,但是高度变化时,会缩短到x=310mm左右。于是可以画一个半径310mm左右的圆。实际情况还需要根据需要实际测量。

  带有由Arduino控制的真空抽吸泵的机械臂。 机械臂具有钢制设计,并且已完全组装。 机械臂上有4个伺服电机。 有3个高扭矩和高质量的伺服电机。 在这个项目中,展示了如何使用Arduino用4个电位器移动机械臂。 使用了气泵的ON / OFF开关和电磁阀的按钮。 因此,可以手动干预电动机和阀门,从而节省了功率和电流。

  关于项目开源,因为下位机部分被我不小心删了,又没有备份,所以我只能给出机械设计部分、软件五子棋和机械五子棋部分的源文件了。这个事情我感到万分抱歉,但是再后面的文章中,我会尽可能的讲清楚原理和设计方法。

  我给的文件包括思维导图、机械设计和软件设计三个部分。思维导图文件夹里面比较清楚的记录了整个制作过程;机械部分是机械臂的设计图和参考别人的一些文件,不过我的机械部分也丢了一点点,只能说凑合着看了;软件部分包括软件五子棋和机械五子棋两部分,软件五子棋就是在文章(1)中开头展示的图片,机械五子棋就是本项目的代码,使用的时候仅仅需要配置好Opencv环境即可,因为我并没有写界面,只是用几张图片展示对弈的过程。

  一个机械臂一般具有这些部分:电机控制部分、机械臂骨架部分、机械传动部分、末端执行器部分。

  骨架就是把各个部分连接起来的结构;电机控制一般包括驱动板和控制板,比如可以使用单片机或者PLC控制电机;机械传动是把电机的转动转换为机械臂骨架运动的结构;末端执行器是用来执行最终工作的结构,比如可以用吸盘舵机或者可以使用夹爪之类的。

  首先,关于机械臂设计,最重要的一点是,我们需要明确需要几个自由度。那么,什么是自由度呢?

  机械臂也就像我们的手臂一样,如果想要到一个地方拿东西,需要两方面的参数,一个是位置参数,一个是姿态参数。位置参数相当于是我们的胳膊,姿态参数相当于是我们的手腕。因为我们要拿一个东西,首先要把胳膊伸过去,到物体的(x,y,z)坐标下,因此,我们的胳膊能够朝几个方向伸出去,就有几个位置自由度,最多是三个。

  以我画的这个机械臂为例,通过舵机,可以控制机械臂从任何一个方向伸末端执行器,所以位置自由度是3。但是末端执行器不管运动到哪里,永远都只能朝下,因此姿态自由度是0,因此我画的这个机械臂是三自由度机械臂。

  如果对于末端执行器执行工作时候的方向没有特殊要求的话,三自由度就可以。比如这个五子棋机器人,我只需要末端执行器能够朝下吸起棋子再放下就好,所以只需要三个位置自由度就够用了。

  可以看出这种机械臂的舵机都在底座上,舵机通过与之连接的杆件转动来带动需要的关节轴运动,实现位置的控制,我就把这种叫做连杆机械臂吧。

  因为我感觉连杆机械臂看起来比较好看,所以我就按这个做的。我画的结构主要是模仿的一款淘宝的商业机械臂,所以这里的一些结构就当我是在讲解这个商业机械臂是怎么设计的吧。

  控制和驱动电路的话前面也说过,我用的是arduino nano和舵机控制板,舵机用的是三个180度的MG996R,末端执行器用的是气泵电机和电磁阀。

  舵机控制原理主要是arduino通过控制pwm的占空比输出一个参考电位,舵机转动的时候会带动电位器转,电位器取样电压等于输入的参考电压时,就停止转动。如果你觉得舵机在平面上转动180度太小了,也可以换270度的舵机,但是这个时候要注意,参考270度舵机的参数,与180度舵机是一组不同的pwm参数。

  主要原理是,转盘连接轴承外圈,底座连接轴承内圈。通过转盘上顶盖、转盘下顶盖(内)的机械应力,固定在轴承内圈上,舵机连接在转盘上顶盖上,转动时带动轴承内圈。转盘连接在轴承外圈。从而使得舵机转动的时候,能够使得底盘和转盘分开转动。

  设计机械臂或者购买机械臂的时候还需要考虑一个这个机械臂的工作空间有多大,是否足够到达五子棋棋盘的所有点。这里我还想说一下三角键三边长度的确定方法,这是我自己想的,可能对,也可能不对。

  在这个图中,三角键的下面两边用于与机械臂构成运动的四边形,因此下面两边的尺寸只需要找到构成这个四边形的端点就可以确定。

   processing 原作者:Sandy Noble 网名:Murphy 教程原网址:这个机器人,是一种画图机器人,简单...

  这个机器人,是一种画图机器人,简单来说是一支悬挂着的笔,通过控制它做有规律的机器运动,就可以像绘图仪一样画出图来。但其效果,对于以往存于我们电脑里面的高清图来说,确是一种天真的尝试,是去尝试着去打破某些东西的。别太认真,认真你便输了!

  它不太会像我们人类这样去画画,我们也很难像他那样去画画。他可以将图画在很大的地方,如果我们要讨论他能画的最大区域,那答案则是取决皮带线. 关于它的历史

  最近出现了许多新的画画机器人,能够看到他们将虚拟的东西转成现实实体的感觉真是太好了。对于我来说,我能够非常容易得制作出趣味编程的、跨界的、混搭的,具有虚拟体验的数字作品,但我认为它们意义并不是很大,因为它们并不具备实体性。试想,你可以在一天之中运行一百次,一千次,甚至百万次得去更新一些变化。画出来的东西是一次性的,我很难去看到里面的价值,体会到自己动手的乐趣。

  事先申明,它并不是我原创的,让我们看下先前的那些艺术创作,会给你带来更多的灵感:Hektor

  SADBot—Instructable上的一种自动画画机器人,材料与我的大致相同

  事实上完全可以有一百种方法来制作这么一个画图机器人,但我打算告诉你们我自己的机器人是怎样做成的,以此作为一个出发点。同时我也希望你们可以自己找到某些可以改进它的地方。

  1.处理电路板—Arduino Uno或者兼容Arduino的。我之前用了Seeeduino。需要注意的地方是有些arduino兼容板使用了FTDI芯片,它们只是兼容了Arduino Duemilanove,它们的存储空间比较少,因此不能符合我们这里的要求。(译者注:刚开始做这个机器人时,大家直接用UNO R3就可以了。)2.电机驱动—Adafruit’s Motoshied v1.这是现在一种比较流行比较实用的驱动。它可以驱动俩个步进电机,并且可以对每个提供600ma的电流,同时还能驱动一个舵机,因此它和这个项目真的可以说是绝配呵。(译者注:使用easydriver最新版本,完全适用)3.步进电机—可以去找额定电流在600ma左右的步进电机。我使用的是步距角为0.9度的步进电机(每转一圈需要400步),名字是NEMA 16步进电机,轴直径为5mm,但我认为使用额定电流为400ma的NEMA 17电机会更好。

  这是一种用来固定画笔的装置。这个名字从书面上来说是稳重的意思,我认为取这个名字有助于我们对它功能的了解,加深对它的印象。

  3.激光切割制作的亚克力零件。最早版本是一些硬纸板,一张CD,通过用胶枪胶联住制作出来,虽然简陋,倒也可以简单粗略得画。

  2. 固定支架—我在这里使用了激光切割出来的木夹板零件,用来把步进电机固定在平整的墙面。如果你是要把电机安装在一块板子,那么只需要把电机直接固定在板子的顶部就可以了。

  我没有能够找到能适配带有珠子的窗帘绳的链轮齿。应该有这样的卷帘机械结构,但还没有一种可以简单使用的结构。于是我自己设计了一个,并且3D打印了出来。JoneAbella设计了一个可调参数的链轮齿文件图,它可以适配其他尺寸珠子的窗帘绳。如果你拥有3D打印机,那你在家就可以自己打印出来了。将链轮齿推入到步进电机的5mm直径轴上。

  你也可以尝试去用一面墙来作为你的画板,当然前提是你能够在墙上固定步进电机。但我总是有不好的预感,马克笔会在墙上乱画,这样我的女房东会对我产生不好的印象。

  用硬板作为你的画板意味着你可以让画板轻微倾斜得靠着墙,这非常好,因为这样的话贡多拉的重量就可以使画笔去压触画纸了。如果画板是完全垂直的话,则画笔很难有力得去压触画纸—画出来的笔画会非常细小。我自己去逛了我们当地的DIY商店,清理了边料箱,尝试着去做一个大画板,可以正好放入我的车里。但我已经做出了一个以最大的宜家Ribba相片框为基础的画板。这意味着我以后就可以直接把它作为画框了,太棒了!我们平常用到的白板也是一个非常好的选择,因为你可以轻松擦除画面,这样你就可以快速得测试,当然你用其他的平整硬板也可以。我第一次使用的是只有A3纸大小的画纸,效果也不错,所以画纸没必要很大。

  你的步进电机应该被固定,并使你的链轮齿尽可能得靠近画板表面。如果你的画板是厚的,那你很幸运,你只需要用双面的泡沫胶将你的步进电机直接粘在画板上方的两个角上。这种方法可以减缓一些震动。但时间长了会有一些脱落,但在我这里并不是一个真正的问题,除非我让它连续工作好几天。当涉及到接线和安装其他东西时,这样的安装就非常简洁。所有的东西都悬挂在后面。

  我自己设计一个可用激光雕刻加工的3mm厚、木板材质的电机固定装置,这本身没有什么聪明之处只是用螺丝连接起来,这样电机部分就可以很容易得拆装,而主要的固定板还是放置在原地方。我使用Ponoko网上一块P1大小的硬木板制作出了一个装置,你需要做两套这样的装置。

  Der Kritzler的设计使用吸盘,是一种可以固定在窗上的装置。他的固定支架比我的更加坚固,但也会使用到更多零件。将这两个大支架分别固定在画板顶端的两角,并且保证他们在同一水平线上。我在每个零件上都或多或少使用了一些双面泡沫胶,但你应该确保多用些,因为他们有些重,同时也会带来一些震动。固定支架的设计文件:支架

  你需要使用到一块Arduino UNO控制板,我自己使用了SeeeduinoV2.21。在过去的一段时间,它确实工作得很棒,但是随着新功能的加入到代码中,它已经有些不适合了。官方版UNO在存储程序的空间上稍微大些。

  将编译好的代码下载到Arduino上。如果是新手的话可以去Arduino官网上或者网上教程上看帮助教程。

  因为代码会不断得更新,所以我没有把代码放在这里,不过最近的版本你可以通过下面的链接得到ina bundle from the polargraph code repository。你应该在Arduino sketch folder下面新建一个文件,将代码文件放入到这个新文件中,将新文件的名字命名成代码源文件名字一样。比方说,如果代码文件名是,那么新建的文件名就应该是polargraph_server_a1,然后将代码文件放入这个文件夹中。程序需要用到Adafruit’s AFMotor 和Mike McCauley’s Accelstepper的库文件。

  上面步骤完成后,你的Arduino安装目录应该像上面第二张图片里的内容。

  一旦你下载代码到Arduino中,你应该去确认它是否工作正确:通过使用arduino软件中的串口调试工具,将波特率设定为57600,如果下载代码过几秒后画面上出现“READY”则说明工作正确。

  这块电机驱动板通常是以套件形式卖的,参照Adafruit上的教程,你会发现它非常容易焊接。这玩意非常棒。我是一个Adafruit的忠实粉丝,你们来控诉我吧,可能我说得太多了。Adafruit在2013年的时候就停产了V1版的电机驱动模块,但是我还没有把polargraph更新到最新的V2版本。许多人还在ebay上销售V1版的复制品,只需要搜索“L293D arduino motorshield”就可以找到。

  这款电机驱动板同时支持两个步进电机,接口两边各一个。它的电源可以由Arduino主板上得到,但它另有一个独立的电源接口,用来连接另外的外部电源。如果你的输入电源线有裸露的接头,你就可以用螺丝将两根线拧紧固定(一定要确保电源极性正确),同时把旁边的跳插拿去。我想强调的是,左边是正极+V,右边则是负极GND。在这块电路板没有防极性反接电路,所以如果你接错了就很可能烧毁驱动板,甚至Uno主控板也会有危险。

  如果你不用上面的方式供电,那你应该将电源线直接连接到Arduino上,并且将跳插放上去。我自己用的是上面的直接接线方式,因为这样的话可以分别给电机部分和逻辑部分分别供电,当然也是因为seeeduino有个不能与其他接口适配的JST电源接口。我也加了少些散热器在驱动板上的驱动芯片(L293Ds)上。芯片确实会发热,如果你有闲置的小风扇的话,就放到驱动板旁来降低芯片的温度。我并不清楚它们如果温度太高的话是否会有危险,但如果我在旁边放一个散热器的话我就可以心安理得让它们长时间工作了。(译者注:电机驱动模块我们选择easydriver,经过测试完全可以,只不过需要在processing控制界面中修改其中一项参数,具体见下文)

  每个二相步进电机里面都有两个线圈,一个双极性的步进电机有四根线连接出来,每两根线对应一相。许多步进电机都有自己的工作手册,仔细阅读手册多次后就可以知道各种颜色线分别对应的相。我自己的是红色线和蓝色线是同属于一相的,而白色线和黄色线是属于另一相。这两个步进电机都应该按照线序连接起来。所以在左边的电机,你应该在将1相(红线/蓝线)接入上面的两个接口,2相(黄线/白线)接入下面两口。同样的,右边的电机接线相在下。

  这个设置已经准备完毕,等待测试。控制软件是用Processing编程语言写的一个小应用。你可以运行源文件来打开程序,当然用我已经编译过的应用程序打开更加方便。软件下载地址:

  下载并且解压文件,运行controller文件中的可执行文件。软件初次打开时,界面会比较小,但你可以选择最大化窗口。当你运行软件时,软件本身会产生一个默认配置文件,当你鼠标点击窗口左上角的“save properties”后,就可以把当前的窗口大小设定成默认大小。

  如果你对Processing怀有兴趣,你的直觉不错:它非常棒!在有许多教程供你学习,当然Instructables也有不少。这种语言是基于Java的,但是通过优化后可以运行小型独立的图形化程序。如果你对此兴趣并且想实时跟进控制软件的改进,那么你最好是自己直接编译源代码。一些值得注意的地方——现在这个版本有点落伍了,我至今还没有把它更新到Processing2。因此,事实上它现在只能在Processing1.51上运行。除此以外,当时我写这个软件时的内部库文件到现在都已经更新版本了,也就是说你现在只能用我提供给你的压缩文件里的库文件。(上面的链接)我现在正在努力进行更新,不过还需要一些时间。现在让我们打开Processing软件,鼠标点击File—Sketchbook,你会看到“polargraph”在这个列表中。点击它,然后就可以运行程序了。初始化时窗口会非常小,所以先最大化窗口或者拉拽边框达到可以看到所有的大小。如果它成功了,那很好,不错的开始呵。让我们进入下一步!

  2. 中间灰色长方形区域:代表机器本身,3. 右边区域:操作命令显示的地方。有些控制键只与控制软件本身有关系(例如load image),但有些控制键(例如set home或者shade square wave)会发送命令到机器上。有些控制键是参数化、可调的,你可以鼠标左键一直按着控制键,然后再通过上下移动鼠标来改变数值大小。

  如果一个命令发送到机器上后,该命令会出现在右边区域的命令队列中,等待去执行。当你第一次打开软件时,命令队列处于停止状态,一些默认设置的命令已经在队列中了。你可以通过单击它来控制开始和停止(就是COMMAND QUEUE aused-click to start)。通过reset queue按键可以清空命令队列(机器停下现在和之后的所有工作)。当命令队列处于停止状态时,可以通过单击各命令而将它从队列中移除。

  界面被分成三个部分,通过点击窗口最上方的菜单进行切换。每一部分中都有一系列的控制按键。

  

  2.Setup.这部分用来设定机器的硬件参数。改变机器的大小,图纸的大小和笔径的大小。一旦你将软件的参数调整到和现实中参数一样时,单击upload machine spec将参数发送到机器上。

  3.Queue.这部分用来将命令队列发送到一个text文件上和从text文件中导入命令队列。

  为了让控制软件与机器通信,你需要切换到setup部分,然后点击里面的serial按键。此时会打开一个小窗口,上面显示了可用的串口。如果你知道Arduino的串口号,请点选它。如果你不清楚,那你就依次尝试,每次点取串口号后请等待几秒钟时间,如果成功的话,在主窗口最上方会显示绿色的Polargraph READY!

  硬件每次向上发送准备完毕的信息,这个过程需要几秒钟的时间,这就是为什么你需要等待几秒才能看到结果的原因。如果你不想连接两者(因为你手边可能还没有机器),只需要选择no serial connection。

  做得好!现在关闭串口选择窗口,然后点击setup部分下的save properties,这样下次打开软件时就会自动连接已选定的串口。14.控制软件——动起来

  如果你是从Processing中编译后打开控制软件的,那你可以在Processing的编译框中等待几秒后看到READY。

  太棒了!现在开始运行命令队列,你会看到第一批命令一个接一个快速得发送到机器上。点击Set home,你会在命令列表中看到这行命令,然后立马发送到了机器上。这时,你可以看到一个大的紫色的点出现在屏幕中灰色区域的顶上中间位置,这个点对应了实际的笔的零点位置。此时两个电机都会发出一些声音,你可以发现它们实际是被锁住了—它们现在通着电!

  好的,现在让我们点击Move pen to point按键,这是一种控制笔移动的命令,你只要任意点击下方的某个地方。幸运的话,你会看见两个电机正反转,加减速,并且听到电机转动的美妙声音。

  同时,紫色点也跟随移动。这就是机器认为笔应该在的地方。再尝试一次以确保链轮齿运行在正确的方向。当机器是让笔从上往下移动的,那么左边(画纸面向人)的电机应该是顺时针转动的,而右边的电机则是逆时针运行的。当笔是从下往上移动,那么情况正好相反。如果一个电机或者两个电机的电机运行方向不正确,那你可能拿到了一份错误的电机资料或者是接线的过程中出错了,也有可能是其他问题。你只需要将同一相的两线交换顺序连接就可以了。老实说,尝试和犯错真的是最后成功中必要的,但是这个过程确实比较艰难,除非你能够保证所有其他的部分都没问题了。

  做得不错!我建议你给自己来一杯饮料!我相信你也会同意,我们在做作品的过程中没有比作品初次转动或者发出“美妙”的噪音,又或者电到你时更欢乐的事儿了呵。

  贡多拉如上图所示,是一种夹住笔的装置。除了这种设计外,还有其他许多可选的设计,比如说这种3D打印式,很适合用在商业上。我自己的设计比较重些,有一个中空的中心,因此笔可以准确地保持在两根窗帘绳聚合之处。实际上,我不清楚这种设计与其他设计有多大的不同,但是它让我感觉不错。

  我第一次做出来的贡多拉,非常简单,使用了一些硬纸板和一块CD盘,接着用胶和轴承连接起来(如上面第三张图)。然后我在里面又加入了一些激光切割出来的零件,但总的原则还是不变。我已经将这个设计以EPS文件开源,尺寸是一张ponokoP1大小的亚克力板。

  各部件之间不是固定的,是可以转动的,然后在中间插入一根铜管(见零件列表)。激光切割的零件上都有些地方需要人工用锉子进行打磨,在打磨过程中需要小心些,因为亚克力材料比较脆弱。各零件按顺序全部推放到铜管,如果之间有些松,你可以用一些胶进行固定。我通常将各部分零件堆叠起来,然后在放上最外面的亚克力圆环之前我在铜管周围上放上一些胶。这个上了胶的圆环可以使我在它运行的过程中感到更自信。另外用一些胶在稳定器上也非常重要。堆叠顺序,从下往上:1. 大尺寸圆形稳定器

  你画面的大小取决于窗帘绳或者皮带线的长度。在安装过程中,请确保你的窗帘绳或者皮带线至少可以从链轮齿端延伸到你最大的画纸的对角上。另外不要忘记了留出一些长度,用来夹住你的平衡重物:只要窗帘绳或者皮带线的一端扣在贡多拉上。

  平衡重物的话,我使用了螺栓,在上面套上垫片。但你也可以使用其他东西作为代替,例如在袋子里放一些重物也是一种不错的选择。重物的重量并不是很重要,这个机器并不需要绝对的平衡。重物的作用只是让贡多拉在机器画图区域的顶上方中间自然得悬挂。我每个重物大概是150克左右。

  接下来,你甚至可以用带有珠子的窗帘绳给你的贡多拉做些造型后再连接,让它好像是蒸汽朋克风格的电弧反应挂饰。(这边不知道怎么翻译了哈)我经常这样做,这样会让我感到很有能量。去做吧,坏小子们!嗯哼~~或者你直接将贡多拉放在机器上,绳套入链轮齿。如果你马达固定方式是像我一样的前置式,你应该做之前先仔细思考下如何避免各种绳线搅扰在一起。(译者注:这边窗帘绳可以用皮带线或是钓鱼线取代,但相应的滚轮也要改变)

  2.找到你的零点根据上面的说明图,在应该标记的地方画上相应的线。为了使你的测量精确,在测量时让水平线尽可能得水平和垂直线尽可能得垂直。如果你标记得不准确的话,最终结果也会让你失望。就像其他网友说的:充分的准备可以避免结局糟糕的polargraph,你不爱她,她又何必爱你。难道不是吗?

  然后画出另一条水平线,比作为上边界的水平线mm的距离,尽量精确。这条线代表着你画纸的上边界。你不能将这条线画得更高。

  接着,通过你机器的中心点垂直得画出一条直线。这条线和画纸上边界线相交的点就是零点了。机器知道笔在软件中的坐标,而你知道笔的实际坐标。当你们两者的世界统一时,合一,接下来的事就好办了。

  Machine widthMachine height依次输入你自己测量出来的数据,单位是毫米。其中Machine height这一项并不是非常重要,因为它并不会影响构图,但它会影响灰色区域在你屏幕上显示的大小,因此还是尽量精确些为好。当你调整这些数值时,你会发现代表机器的灰色区域也会实时随之改变。

  零点有一个预设的坐标,地点是在你画纸的上边界的中点。如果零点颜色是灰色的,那么点击centre homepoint重新校准。你也可以自己任意位置设零点,如果你不想把它定在那里。(或许因为某些原因)

  现在点击save properties,防止你再次打开软件时还要重新设定。

  1.stepsPerRev:这项代表你电机转一圈所需要的步数。好的,事实上,我们这边需要将它翻一倍,因为我在软件中使用了一种交错的运转方式—它产生了一种类似中间的运转。我自己的步进电机每转需要400步,所以这一项设定成800。

  (译者注:使用了EasyDriver作为电机驱动,在默认情况下,这项参数应该是1600)

  2.mmPerRev:这项代表每转一圈窗帘绳运动的长度。很明显,它就是链轮齿的周长,换到带有珠子的绳索,则相当于8段珠子部分的长度。

  3.step multiplier:(没有在图中显示出来)这项代表你电机每一大步中包括了多少小步。对这个机器来说,应该设置成1。

  如果你正在修改这些设置,你最好修改完后保存然后再次打开控制软件。这里面包括了许多其他的基于这些参数的计算,所以重启一下会更好些。

  现在你应该看到在屏幕上的尺寸已经改变,控制软件已经知道了你机器的真正大小。但是机器本身还不知道。

  你应该切换到setup部分,然后点击Upload machine spec将信息下载到机器。(这个非常重要,否则会出现严重的定位错误)这些信息会保存到Arduino的EEPROM上,这样即使在没有电的情况下信息任然可以保存。除非你要再次改变器件大小,否则不要去设置它。这些信息不包括画纸的大小,只是机器大小。

  如果你对此感到好奇(你为什么不呢?)Download machine spec(如果遇到无法定位相关的问题,可以通过执行这一命令来帮助解决问题)会反向得进行信息回传-它会将机器参数恢复成之前保存的。如果你自己删除了你的设定文件,并且不想再次测量机器,那这个功能会对你很有帮助。

  请记住如果你没有点击save properties的话,你这些设置的参数在下次打开软件时不会进行更新。如果你修改了某些参数的话,记得一定要及时保存。

  (译者注:如果发现画图轨迹错乱或是其他一些诡异情况,就使用Download machine spec来查对下arduino中的参数是否与你自己设的参数是否一致,我有很多错误都是因为这个缘故)20.运转起来

  你需要在每次画图之前进行校准。其中包括了告诉笔在哪里。首先点击Input 部分中的Set home,然后手动得将贡多拉移动到我们之前测量出来的实体零点上。

  点击Set home锁住电机,他们已经接上电,因此他们会一直抓紧贡多拉,直至你去取消。

  点击Move pen to point让贡多拉在画板上移动。电机的声音应该是柔和的,笔在运动的过程中也应该如此。如果你发现你的电机有些滑轮——主要是发生在画板的边缘,或者是电机运作得过快时—你应该重新校准。只要贡多拉真实的坐标与机器所认为的不一致,那么你画出来的图案会很错乱、糟糕,会让你大失所望。

  标准的最大速度是每秒钟600步,加速度是每秒钟700步。切换到setup部分,左键一直按着send speed,通过上下拉拽鼠标来改变参数。你也可以在第25栏中用+和-来增大减小最大速度,用/和*来增大减小加速度。这些改变速度的命令也会跳到右上边的控制命令列表中——它们是优先的,你可以看到他们以蓝色字体出现在列表中。21.加入图片

  1.切换到Input部分,点击load image后来载入一张图片。有一些图片比其他的更适合,不过都是要去自己体会的,因此图片的选择偏重经验。

  2.如果你的图片并没有显示出来,那很有可能没有在屏幕内或者是尺寸太小了。点击move image,然后你可以看到你选择的图片会更随你鼠标的移动而移动。鼠标移动到你机器的中央然后单击放下图片,然后再次点击move image退出这个命令。3.拉拽resizeimage来控制图片的大小4.点击SelectArea,然后在你想要画图的区域拉出一个边框。

  7.点击gridsize,然后通过拉拽来改变“像素”的大小,需要记住,像素越小,画图的花费时间越长(事实上,就单个来说花费时间非常短,但这样总像素点就多了呵)

  8.点击samplearea,然后通过拉拽来控制图片的对比度。这是选择密度时,被取样的区域大小。我发现最好的处理是sample area值稍大于grid size值。

  记住,一旦你找到了你所喜欢的设置,你可以点击save properties来及时保存这些属性设置。如果你不保存的话,下一次打开时都会消失,那时你会欲哭无泪的。

  1.Shade Square wave—标准的。(默认的)像素密度被转化成一种方形波纹图案。深像素=更多的波纹=更多的墨水。

  2.Shade Scaled square wave—半色调的效果。不是去改变波纹的数量,而是通过改变波纹的大小来达到效果。深像素=大像素=更多的墨水。

  3.Shade Solid—色度键控效果(是指两幅图像合成时,其中一幅图像中的特定颜色(cyan)为另一幅图像中的内容所取代的现象,如上面3、4图所示)。这种风格中每一个像素密度都达到最大,没有变化。

  4.Shade scribble—噪音的效果。这个风格有些像随机的像素—若干线条被画上去,但是它们的方向和长度是随机的(在像素的边界之内)。深像素=更多的线条=更多的墨水。

  我已经测试成功了不漏墨的笔和画纸。我个人比较喜欢非常柔滑的纸,配合硬笔尖极细笔。在英国我可以非常容易得买到这些ZIG Millennium笔,他们使用起来效果非常棒。Pigma MiCRON的笔用起来效果差不多,并且在美国比较受欢迎。对于画面粗犷的画,使用笔尖粗的笔效果会更好。我之前一直平常的记号笔,尽管他们会渗出墨水,但效果也挺有生气,浓密的厚度营造出别样的效果。

  如果你将一个小舵机固定在贡多拉上,那你就可以使用它来让笔尖离开画纸。在驱动电路板上有两个舵机连接部分,如果你连接了SER1,就可以实现软件对它的控制。我在舵机上加了一个角状零件,通过舵机带动这个零件戳在画板上来使画笔离开画板。

  可以通过手动按下#或者~来提起放下笔。这个过程不是很精确,但却是可以保证在结束画画时防止笔的墨水渗出。当你开始画画时,这些命令会在开始和结束的时候执行。

  你可以切换到setup部分,通过改变pen tip项的参数值来改变实际效果,然后点击send pen tip size。笔尖的大小不会存储在机器中,需要你每次打开软件时上传,这就是为什么每次重启时这个命令都会预存在命令列表中。

  并不是只能依赖厂家所描述的笔尖直径,这里也还有另外一种测试笔尖宽度的方法—在画纸上以最大密度画出一连串像素,但每个像素之间都会有根据设定的增长,因此当笔尖的厚度达到你想要的最深密度时,你可以尝试着去减小些。在setup部分中,有三个相关设置用来控制测试的大小:Pen test start tip—这是初始部分的笔尖大小,应该尽量小些。

  Pen test Inc tip—这是机器从开始部分到结束部分之间笔尖宽度的增量。

  如果开始部分笔尖大小被设置成0.6,结尾部分是2.0,增量是0.1,那么机器会画出第一个像素就好像它有一个0.6mm笔尖大小的笔,之后画得更宽,每次增长0.1mm,一直增加到2mm。

  一旦你决定了你想要的,那就将笔尖直径设置成你所需要的,然后点击save properties。

  所有的路径需要以SVG格式文件分离。文字需要转换到这些路径中。你可以通过选择任何事物,然后进入Path-Object To Path来完成上面所说的,(这可以将任何形状比如字母变成轮廓),接下再次选择它们,执行Path-Break Apart(这可以打破多轮廓的字母)。在将填充的颜色变成透明后,你会发现这个功能很有用(在底部点击empty swatch),然后将轮廓设置成黑色(在底部点击black swatch)。保存。

  切换到部分,点击load vector,选择你的SVG格式文件。如果你看不到你的矢量图,点击“move vector”,然后你可以看到它更随你的鼠标移动而移动。再次点击放置SVG图片。你可以通过拉拽“resize vector”来控制它大小。这里100代表了它最大的尺寸,inkscape中的一个1px代表了机器中的1mm。

  控制软件只会将线画在page区域中。现在点击rendervector来将线条艺术装换成polargraph命令,然后将这些命令下载到命令列表。对于矢量画作品,move direct命令是用来告诉机器要移动的坐标,然后它就会在画纸上画出一条直线。下面的部分会有一些慢,那是因为它主要是一条线段分割成若干条更细的线条,需要不停地做更多的计算。如果你将矢量图隐藏起来(show vector),你就可以看到存放在控制命令列表中(show queue preview)的线条直观得预览显示出来。

  (译者注:最后这一部分没有认真得翻译,主要也是自己没有亲自试验过,大家自己去尝试)

和记娱乐

上一篇:工业机械臂

下一篇:渝北回兴近5万平方米大型货运停车场正式启用

和记娱乐 - 立体车库 - 立体停车场 - 关于我们 - 产品中心 - 新闻资讯 - 联系我们 -

和记娱乐 版权所有 苏ICP备17012677号-1 站长统计 技术支持: 网站地图