论文部分内容阅读
摘要:采用arduino为主要控制电路,将数控代码嵌入到arduino開发板,由电脑控制整个机器的运动轨迹,通过电脑绘制图像,传输到arduino,并最终由绘图机展现出来的一项可实施项目。
关键词:arduino控制电路;cnc绘图机;坐标转换
Abstract:Arduino is used as the main control circuit to embed the NC code into the Arduino development board. The computer controls the motion track of the whole machine,draws the image through the computer,transfers it to Arduino,and finally implements an executable project by the plotter.
Keywords:arduino control circuit CNC Drawing Machine Coordinate transformation
一、引言
随着计算机技术的飞速发展,绘图技术在人们的生活和工作过程中起着越来越重要的作用,然而在实际中,大型打印设备或者绘图仪器价格昂贵,需要专业的技术维护,因此研究低成本、结构简单、尺寸大小可调节、并具有良好性能的绘图机是有十分重要的现实意义和市场价值。Arduino 作为当前流行的单片机控制器,常常被用于绘图、芯片贴片、激光雕刻、医学化验等的设计,所以设计一款基于Arduino的CNC绘图机已然变成了一种可行性很强的研究尝试。
二、系统设计 [1]
此设计分为硬件和软件两个方面。硬件包括整机的内部电路和机器的外形。软件方面,通过用Arduino的编程语言编写程序,编译成二进制文件,烧录进微控制器,然后调试机器,并最终完成制作。
2.1硬件实施方案
此绘图机是一款基于 Arduino 的CNC控制系统。其硬件部分主要包括 Arduino 控制模块、数据线或蓝牙模块、驱动电路模块和坐标转换模块等。
硬件部分以arduino uno为主控板,通过数据线或者蓝牙模块与电脑端连接,另一端arduino uno通过驱动电路控制X,Y,Z轴电机,主要设计框图如图1所示。
(1)Arduino主控板
Arduino[2] 是一款便捷灵活、方便上手的开源电子原型平台,硬件部分由 Atmel AVR 单片机、I/O 接口及相关电路组成,软件部分则包括标准的程序编译器和程序下载器。
Arduino是为了传授互动设计而诞生的,可以快速使用Arduino与Adobe Flash,Processing,Max/MSP,Pure Data,SuperCollider等软件结合,作出互动作品。开发者只需在IDE中编写程序代码,将程序上传到Arduino电路板中,程序便能执行操作,从而实现设定的功能。相对于传统的单片机,Arduino 的特点主要包括免费、开源的IDE,并且它能与电机控制板相互兼容,使得电路更加简单可靠,同时价格相对比较低廉。符合我们的研究理念。
(2)数据传输方式
数据传输采用BT08B蓝牙模块,此专为智能无线数据传输而打造,遵循V3.0蓝牙规范。支持UART接口,并支持SPP蓝牙串口协议,具有成本低、体积小、功耗低、收发灵敏性高等优点,只需配备少许的外围元件就能实现其强大功能。
Arduino主控板通过蓝牙串口接收电脑端的程序控制指令,从而实现绘图机的控制。
(3)驱动电路
驱动电路,位于主电路和控制电路之间,用来对控制电路的信号进行放大的中间电路。该驱动电路采用PWM脉冲宽度调制方式来控制X、Y、Z轴的运动,而且每个轴的驱动都装有过流保护电路,当电流超过一定值时,就会向系统发出信号,使系统出现急停状态,从而保护电路。
(4)坐标转换
绘图机的坐标系统以及坐标的映射是整个设计的核心部分。坐标系统以左上角为原点(0,0),向下为 X轴方向,向右为Y轴方向,向上为Z轴方向。坐标的映射则是通过与控制软件通信获取到的坐标,Arduino主控板将坐标换算为距离并输出,然后将坐标映射为X、Y、Z轴的增加长度,以此来控制电机的移动。在电机的移动过程中最重要的是矢量作图,矢量作图需要提笔与放笔的控制。提笔与放笔是通过舵机来实现的。在控制软件上输入所要绘制的路径,解析并转换为直线段,然后发送坐标给Arduino主控器,通过函数转换为目标长度,最终到达指令所给的距离,绘制完整的图形。
2.2 软件设计及程序执行方案
软件控制[3]流程如下,首先,编写arduino主程序代码将其下载到主控板上,用lnkscape软件画好图形,保存到文件,用processing软件加载图形文件转换为坐标代码,通过蓝牙发送到arduino控制板上。软件设计及程序执行方案如图2所示。
(1)Arduino IDE软件
arduino IDE是一款专业的arduino开发工具,主要用于arduino程序的编写和开发,拥有开放源代码的电路图设计、支持ISP在线烧,同时支持Flash、Max/Msp、VVVV、PD、C、Processing等多种程序兼容的特点。在此次绘图机的研究中,通过IDE软件编写程序,将其发送至主控板,实现软件系统的程序控制。
(2)Lnkscape软件
Inkscape是开源的矢量图像编辑软件,它可以导入JPEG、PNG、TIFF等格式,并输出为 PNG 和多种位图格式。在此绘图机的设计中,通过Inkscape软件绘制图形,并将其路径保存下来。
关键词:arduino控制电路;cnc绘图机;坐标转换
Abstract:Arduino is used as the main control circuit to embed the NC code into the Arduino development board. The computer controls the motion track of the whole machine,draws the image through the computer,transfers it to Arduino,and finally implements an executable project by the plotter.
Keywords:arduino control circuit CNC Drawing Machine Coordinate transformation
一、引言
随着计算机技术的飞速发展,绘图技术在人们的生活和工作过程中起着越来越重要的作用,然而在实际中,大型打印设备或者绘图仪器价格昂贵,需要专业的技术维护,因此研究低成本、结构简单、尺寸大小可调节、并具有良好性能的绘图机是有十分重要的现实意义和市场价值。Arduino 作为当前流行的单片机控制器,常常被用于绘图、芯片贴片、激光雕刻、医学化验等的设计,所以设计一款基于Arduino的CNC绘图机已然变成了一种可行性很强的研究尝试。
二、系统设计 [1]
此设计分为硬件和软件两个方面。硬件包括整机的内部电路和机器的外形。软件方面,通过用Arduino的编程语言编写程序,编译成二进制文件,烧录进微控制器,然后调试机器,并最终完成制作。
2.1硬件实施方案
此绘图机是一款基于 Arduino 的CNC控制系统。其硬件部分主要包括 Arduino 控制模块、数据线或蓝牙模块、驱动电路模块和坐标转换模块等。
硬件部分以arduino uno为主控板,通过数据线或者蓝牙模块与电脑端连接,另一端arduino uno通过驱动电路控制X,Y,Z轴电机,主要设计框图如图1所示。
(1)Arduino主控板
Arduino[2] 是一款便捷灵活、方便上手的开源电子原型平台,硬件部分由 Atmel AVR 单片机、I/O 接口及相关电路组成,软件部分则包括标准的程序编译器和程序下载器。
Arduino是为了传授互动设计而诞生的,可以快速使用Arduino与Adobe Flash,Processing,Max/MSP,Pure Data,SuperCollider等软件结合,作出互动作品。开发者只需在IDE中编写程序代码,将程序上传到Arduino电路板中,程序便能执行操作,从而实现设定的功能。相对于传统的单片机,Arduino 的特点主要包括免费、开源的IDE,并且它能与电机控制板相互兼容,使得电路更加简单可靠,同时价格相对比较低廉。符合我们的研究理念。
(2)数据传输方式
数据传输采用BT08B蓝牙模块,此专为智能无线数据传输而打造,遵循V3.0蓝牙规范。支持UART接口,并支持SPP蓝牙串口协议,具有成本低、体积小、功耗低、收发灵敏性高等优点,只需配备少许的外围元件就能实现其强大功能。
Arduino主控板通过蓝牙串口接收电脑端的程序控制指令,从而实现绘图机的控制。
(3)驱动电路
驱动电路,位于主电路和控制电路之间,用来对控制电路的信号进行放大的中间电路。该驱动电路采用PWM脉冲宽度调制方式来控制X、Y、Z轴的运动,而且每个轴的驱动都装有过流保护电路,当电流超过一定值时,就会向系统发出信号,使系统出现急停状态,从而保护电路。
(4)坐标转换
绘图机的坐标系统以及坐标的映射是整个设计的核心部分。坐标系统以左上角为原点(0,0),向下为 X轴方向,向右为Y轴方向,向上为Z轴方向。坐标的映射则是通过与控制软件通信获取到的坐标,Arduino主控板将坐标换算为距离并输出,然后将坐标映射为X、Y、Z轴的增加长度,以此来控制电机的移动。在电机的移动过程中最重要的是矢量作图,矢量作图需要提笔与放笔的控制。提笔与放笔是通过舵机来实现的。在控制软件上输入所要绘制的路径,解析并转换为直线段,然后发送坐标给Arduino主控器,通过函数转换为目标长度,最终到达指令所给的距离,绘制完整的图形。
2.2 软件设计及程序执行方案
软件控制[3]流程如下,首先,编写arduino主程序代码将其下载到主控板上,用lnkscape软件画好图形,保存到文件,用processing软件加载图形文件转换为坐标代码,通过蓝牙发送到arduino控制板上。软件设计及程序执行方案如图2所示。
(1)Arduino IDE软件
arduino IDE是一款专业的arduino开发工具,主要用于arduino程序的编写和开发,拥有开放源代码的电路图设计、支持ISP在线烧,同时支持Flash、Max/Msp、VVVV、PD、C、Processing等多种程序兼容的特点。在此次绘图机的研究中,通过IDE软件编写程序,将其发送至主控板,实现软件系统的程序控制。
(2)Lnkscape软件
Inkscape是开源的矢量图像编辑软件,它可以导入JPEG、PNG、TIFF等格式,并输出为 PNG 和多种位图格式。在此绘图机的设计中,通过Inkscape软件绘制图形,并将其路径保存下来。