《基于arduino板的写字机设计.docx》由会员分享,可在线阅读,更多相关《基于arduino板的写字机设计.docx(42页珍藏版)》请在优知文库上搜索。
1、摘要Abstract弓I言1总体方案设计1.1 系统方案设计1.2 系统工作原理2硬件电路的设计2.1主控模块设计2.2驱动模块设计2.3时钟模块设计2. 4总电路设计3软件设计3. IArduino开发环境3 .2主程序设计4 .3抬笔落笔的子程序设计3. 4摆臂子程序设计4系统调试3.1 系统硬件调试4. 2系统软件测试结论参考文献附录1舵机及DS3231参数附录2源程序清单致谢摘要为了提高人类生产生活的工作效率,减轻人工抄写的工作强度,顺应科学技术的飞速发展,利用开发板为主控制器,通过下达指令控制位于3D打印写字板下方的舵机来控制笔距离纸面的高低位置,以达到模仿人类抬笔落笔的目的。同时控
2、制位于3D打印机械臂连接处的左右舵机,带动左右小臂进行运动,控制笔尖在板上的位置,配合着底部舵机的运动实现对数字等字体的书写。结果表明,基于ArdUino板的写字机能够代替人工手写,与此同时,整套装置也表现出极好的灵活性、智能化。同时也说明,智能机器人对于帮助人类完成书写工作以及提高人类的书写效率起到了至关重要的作用,机器人书写技术可以使机器人在通过对字体的学习后进行自主书写。而由于机器人写字技术具有灵活性、智能化、高可靠性、高精度的特点,因此,人们致力于将此项技术应用于生活实际工作中,以提高工作效率,并不断拓展写字机的功能。目前,写字机的应用领域已经大大拓宽,这意味着该课题的可行性。关键词:
3、机械臂;舵机;灵活性;智能化AbstractInordertoimprovetheefficiencyofhumanproductionandlife,reducetheintensityofmanualtranscription,andcomplywiththerapiddevelopmentofscienceandtechnology,Arduinoboardisusedasthemaincontrolchiptocontroltheservolocatedbelowthe3Dprintingboardbyissuinginstructionstocontroltheheightofthe
4、pentipfromthepapersurface,soastoachievethepurposeofimitatinghumanliftingandwriting.Atthesametime,controltheservolocatedattheconnectionof3Dprintingforearm,drivetheleftandrightforearmstomove,controlthepositionofthepentipontheboard,andwritethenumberandotherfontsaccordingtothemovementofthesteeringgearat
5、thebottom.TheresultsshowthatthewritingmachinebasedonArduinoboardcanreplacemanualhandwriting,andhasaspeedandstabilityexceedingthatofhumanhandwriting.Atthesametime,thewholedevicealsoshowsexcellentflexibilityandintelligence.Atthesametime,italsoshowsthatintelligentrobotsplayacrucialroleinhelpinghumansco
6、mpletewritingandimprovingtheirwritingefficiency.Robotwritingtechnologycanenablerobotstowriteindependentlyafterlearningfontsorafterreceivinginstructionsfromclockmodules.Thankstotheflexibilityandintelligenceofthewritingmachine,peoplewillbeabletoapplythistechnologytotheirlivesandconstantlyexploititsfun
7、ctions.Atpresent,theapplicationfieldofwritingmachinehasbeengreatlyexpanded,whichmeansthefeasibilityofthesubject.Keywordszmechanicalarm;servo;flexibility;intelligent引言由于ArdUino入门简单,对电路知识的要求并不高,并且发展前景好,所以人们越来越重视此领域的开拓,同时,由于5G时代的到来,VR.AR等可穿戴设备的应用将会更加普及,这就为ArdUinO提供了更多的发展机会,而且随着科技的进步,人们创新意识显著增强,ArdUinO这
8、种易上手、稳定性高的的技术将会更受人们的青睐。本项目主要研究写字机实现书写数字并记录时间的问题,比较深入地研究了ArdUinO板、动力学、轨迹规划、舵机驱动等问题。文字是人类文明延续的重要媒介,知识经济时代已经到来,生产化的高科技产品已经逐渐融入到人类的生活中。机器人技术是一种新的科技领域,生产与生活中不可或缺的一部分。并且为国家的制造业打下了新的基础。不仅如此,这项技术正在逐渐的改变我们的生活,原本繁杂的工作变得越来越简单易处理,原本靠人类自身无法实现的工作也逐渐变成了可能,可以说是开创了一个新时代。目前为止,人类记录时间的、记录数据的方式还停留在手动阶段,虽然很多电子设备中都内置了精密的时
9、钟,但并不能人性化的将时间或重要的数据自动记录下来,而智能写字机的出现将代替人类完成这些繁杂的工作。智能写字机综合了计算机、控制论、仿生学等多学科知识的技术产品,其应用场景广泛,不仅是Al技术的新思维,更是对提高人类书写工作效率有着重大意义。不仅如此,写字机的功能极具开发价值,不仅可以成为记录时间的工具,也可以加入激光头进行激光雕刻,甚至还可以绘制一些复杂的绘画作品。可以说写字机不光是一台会写字的机器,还是一个多功能的艺术创作机器人。在写字机进行绘画的实验中,王晓丽、宫晓博等改善了笔架的运行轨迹,使绘画作品更加生动;此外,在写字机汉字书写实验中,南京林业大学机器人研究所也取得不错的成果,成功的
10、对笔的运行轨迹进行了重新编程,拓展了更多书写字体。与此同时,写字机在国外也有了多项研究成果。MFCrainie等人提出了一种促进证书或传统信用证创建的方法,实现了写字机的机械臂可以在斜面上进行书写。KTahara等人还提出了一种新的控制方案,该方案实现了使笔尖可以从初始位置运动到平面指定任意位置叫。当前,写字机器人存在如下三个方面的问题:写字机器人不够智能,太过于依赖已有的程序,如果程序发生错误,就会影响整个写字过程。系统缺乏异常容错能力,且系统自身并不能找到错误原因。当前的写字机器人只是在同一水平面简单的程序化的进行书写,不能实施多角度的操作,只局限一个方向。当前的写字机器人只局限于纸质品上
11、绘画,写字操作不够精细,且需要人工辅助。最重要的是写错之后不能自动修改。本项目围绕如下几个方面进行研究:关于机械控制,结合机械结构、前进和后退运动学、工作空间、力学和轨迹规控制写字机。对在空间平面、柱面及球面的多角度绘制。模块化设计,针对不同材料、笔触模块的相应设计。标绘时钟,为了能够有效地记录时间数字,需要对时钟模块进行学习。仿生人写字绘画的动作,使得绘制的作品更具人性。本文的主要工作如下:第一章重点说明了系统的方案设计,主要阐述了系统的功能和设计目标,并根据设计目的选择合适的驱动模块,做出了系统的总体方案设计框图。第二章介绍了写字机的硬件设计,其中包含各个模块的设计原理,并根据系统的设计要
12、求选取Arduino板的型号,选择最适合要求的舵机和时钟模块。本章重点介绍了舵机模块的电路设计,以及舵机与ArdUinO板之间的协作。第三章讲述了系统的软件设计;简要介绍了系统的开发环境以及重要函数和系统流程图。第四章是写字机的调试部分,囊括了系统的硬件测试以及软件测试,并就本设计出现的问题,做了简单的论述以及解决办法。1总体方案设计1.1 系统方案设计写字机系统是由一个主控制器、一个执行环节来完成对笔的控制,使笔能够在写字板上写出简单的字体,通过对资料的采集,本系统的可供选择的有步进电机控制执行和舵机控制执行,具体方案如下:方案一:写字机的整体系统由计算机、Arduino板、步进电机以及舵机
13、组成,其中Arduino板为主控制器,步进电机和舵机则控制笔移动。文本信息由计算机转换成G代码传送给Arduino板,其内部程序会将G代码转换成相应的程序代码来控制步进电机和舵机的运动。写字机的主要动力驱动是由步进电机完成的,实践中控制每输出一个控制脉冲,电机就运转带动笔架,进而实现仿写字体。此方案可以仿写人类字体,精度高,但价格高,结构复杂,难实现。方案二:写字机的整体系统由计算机、Arduino板、时钟模块和舵机四部分组成,其中Arduino板主要作为主控制器,三个舵机主要控制笔的抬落以及书写工作。主要由上位机将信号传送到下位机ArdUino板中,在经过简单的几个坐标运算,计算出每个要写的
14、数字或汉字中笔画的重要连接点,同时根据机械臂的几何原理,控制左右机械臂的舵机齿轮在0至180度之间转动,从而带动机械臂与笔的运动,进而进行写字。再利用时钟模块,可以书写出实时的时间。此方案的最大优点是拓展了智能写字机的功能,使其能够自动记录时间,并且价格便宜,结构简单,易实现,并且方便携带。其缺点是写字精度不够且只能写一些简单的汉字。经上述比较,虽然方案一可以写出大量的切精度高的仿写字体,但是研究范围太大,且价格昂贵,而方案二价格便宜并且全舵机控制写字更容易实现,并且增加时钟模块拓展了传统写字机的功能,更具创新意义,故选择方案二通过舵机带动机械臂进行书写。1.2 系统工作原理智能写字机系统采用
15、自动化控制,要求实现抬笔落笔、写字、记录时间,所以系统分为左右以及抬臂舵机部分、控制器部分、时钟模块部分,其中控制器采用ArdUino板来控制写字信号的传输,时钟模块部分则采用时钟芯片传输实时时间信号,舵机部分则采用微型舵机完成对写字信号的执行,系统可以在每一分钟记录一下时间,也可以自行安排写字内容,即一个ArdUinO控制器,操控写字机系统中若干组成模块的正常运作,其控制系统框图如图1.1所示。图1.1控制系统框图2硬件电路的设计2.1 主控模块设计2.1.1 主控模块的选择Arduino是个基于开放源代码的软硬件平台。他的硬件具有丰富的接口,有数字I/O口、模拟I/O口,同时支持SPI、I
16、C、UART串口通信。常见的主板型号有ArdUinOUN0、ArduinoMega2560ArduinolOlArduinoLeonardo等。其中适用于本设计的型号有ArdUinOUnO和ArdUinolOll2。方案一:ArduinolOl是一款拥有入门级别的主板,其拥有高性能、低功耗的特点,同时拥有神经元功能,适用于机器学习,但是其价格昂贵,有时则会出现手动复位的问题,其强大的功能反而被UNO的外形所限制。方案二:ArdUinoUNo作为主控芯片时,实物如图2.1所示,其选用ATmega328MCU控制器为基础,具备14个数字输入/输出引脚(其中6路可用于PWM输出)、6路模拟输入、一个16MHZ陶瓷谐振器、一个USB接口、一个电源插座、一个ICSP接头和一个复位按钮3