




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目介绍课程作业项目名称:基于单片机系统的四自由度随动机械臂子项目:(1)了解ArduinoLeonardo这款硬件开发平台;(2)制作随动机械臂(3)了解SSC32路舵机控制器的用法;项目介绍:项目旨在制作一台小型四自由度机械臂,控制方式为随动控制(即用一种用电位器制作操纵杆,使舵机摆过的角度电位器的旋钮,从而达到机械臂跟随操纵杆运动的一种控制方式),此机械臂通过利用ArduinoLeonardo这款硬件开发平台作为处理器,电位器为输入设备,舵机为输出设备,搭建起以ArduinoLeonardo为核心的机械臂系统。项目介绍课程作业项目名称:基于单片机系统的四自由度随动机械臂1图2,机械臂主体图1,机械臂主体和Arduino连接
实验视频链接图2,机械臂主体图1,机械臂主体和Arduino连接2子项目1:什么是ArduinoLeonardo?图三,我所用的ArduinoLeonardoArduinoLeonardo的处理器核心是ATmega32u4,同时具有20路数字输入/输出口(其中7路可作为PWM输出,12路模拟输入),一个16MHz晶体振荡器,一个USB接口,一个电源插座,一个ICSPheader和一个复位按钮。子项目1:什么是ArduinoLeonardo?图三,我所3子项目1:什么是ArduinoLeonardo?概要处理器ATmega32u4工作电压5V输入电压(推荐)7-12V输入电压(范围)6-20V数字IO脚20(其中7路作为PWM输出)模拟输入脚12IO脚直流电流40mA3.3V脚直流电流50mAFlashMemory32KB(ATmega32u4,其中4KB用于bootloader,即引入程序)SRAM2.5KB(ATmega32u4)EEPROM1KB(ATmega32u4)工作时钟16MHz
电源ArduinoUNO可以通过2种方式供电,而且能自动选择供电方式外部直流电源通过电源插座供电。USB接口直接供电。存储器ATmega32u4包括了片上32KBFlash,其中4KB用于Bootloader。同时还有2.5KBSRAM和1KBEEPROM。USB接口外接电源接口子项目1:什么是ArduinoLeonardo?概要4子项目1:什么是ArduinoLeonardo?输入输出20路数字输入输出口:工作电压为5V,每一路能输出和接入最大电流为40mA。每一路配置了20-50K欧姆内部上拉电阻(默认不连接)。除此之外,有些引脚有特定的功能串口信号RX(0号)、TX(1号):与内部ATmega32U4USB-to-TTL芯片相连,提供TTL电压水平的串口接收信号。外部中断(2号和3号):触发中断引脚,可设成上升沿、下降沿或同时触发。脉冲宽度调制PWM(3、5、6、9、10、11、13):提供7路8位PWM输出。SPI(10(SS),11(MOSI),12(MISO),13(SCK)):SPI通信接口。LED(13号):Arduino专门用于测试LED的保留接口,输出为高时点亮LED,反之输出为低时LED熄灭。模拟输入A0到A5、A6到A11:每一路具有10位的分辨率(即输入有1024个不同值),默认输入信号范围为0到5V,可以通过AREF调整输入上限。除此之外,有些引脚有特定功能AREF:模拟输入信号的参考电压。Reset:信号为低时复位单片机芯片。通信接口串口:ATmega32U4内置的UART可以通过数字口0(RX)和1(TX)与外部实现串口通信;ATmega32U4可以访问数字口实现USB上的虚拟串口。TWI(兼容I2C)接口SPI接口物理特征ArduinoUNO的最大尺寸为2.7x2.1inches。开发环境Arduino1.0.1开发语言为C语言图四,开发环境子项目1:什么是ArduinoLeonardo?输入输出图5子项目2:制作随动机械臂原理图:VVVVVVVVVUSB(连至电脑)AnalogInput(PWM)AnalogInputArduinoLeonardoVV+=5VV+=5V舵机(servo)有三条接线,分别为信号线(signal),电源线(V++)和地线signal电位器(pot)有三根线,其中电刷连接的变阻线接板子的模拟输入子项目2:制作随动机械臂原理图:VVVVVVVVVUSB(连6子项目2:制作随动机械臂实际连接图(以一号舵机为例):舵机电位器子项目2:制作随动机械臂实际连接图(以一号舵机为例):舵机电7子项目2:制作随动机械臂程序源代码(一个舵机)
#include<Servo.h>//开发环境Arduino1.0.1中有此库
Servomyservo;//创建一个舵机项目(myservo)以操控一个舵机
intpotpin=0;//模拟输入接口0号口接电位器intval;//引入变量读取电位器输入的电压值
voidsetup(){myservo.attach(9);//把舵机连接至九号PWM输出口上
}
voidloop(){val=analogRead(potpin);//从电位器上读取电压值(从0到1023)val=map(val,0,1023,0,179);//用map函数将电压值转化成要控制的舵机的转动角度
myservo.write(val);//
将输出角度读出控制舵机转动delay(15);//等待舵机达到指定位置}子项目2:制作随动机械臂程序源代码(一个舵机)8子项目2:制作随动机械臂当控制四个舵机时,程序变成:#include<Servo.h>
Servomyservo1;Servomyservo2;Servomyservo3;Servomyservo4;
intpotpin1=0;intpotpin2=1;intpotpin3=2;intpotpin4=3;intval1;intval2;intval3;intval4;
voidsetup(){myservo1.attach(9);myservo2.attach(10);myservo3.attach(11);myservo4.attach(13);}
voidloop(){val1=analogRead(potpin1);val2=analogRead(potpin2);val3=analogRead(potpin3);val4=analogRead(potpin4);val1=map(val1,0,1023,0,179);val2=map(val2,0,1023,0,179);val3=map(val3,0,1023,0,179);val4=map(val4,0,1023,0,179);myservo1.write(val1);myservo2.write(val2);myservo3.write(val3);myservo4.write(val4);delay(15);}图5,Arduino1.0.1中的四自由度机械臂随动控制程序在制作硬件之前,可以现将此程序拷入板子子项目2:制作随动机械臂当控制四个舵机时,程序变成:图5,A9子项目2:制作随动机械臂材料:1.ArduinoLeonardo板一个,miniUSB数据线一条(接电脑用)。2.舵机:普通模拟180度舵机一个(盛辉mg996R即可);9g小型舵机2个;2.5g微型舵机一个。3.电位器4个(1K1W,其实具体型号无所谓,1K左右的低功耗的就行,旋转角尽量接近180度,因为选取的舵机都是180度的舵机)子项目2:制作随动机械臂材料:10子项目2:制作随动机械臂材料:4.杜邦线若干(公母头的都要有哦)。5.舵机摆臂若干,各种型号螺丝若干。工具各种螺丝刀(必须的),强力胶水(加固用),电烙铁,焊锡等技术宅必备电工用具。暂时还没买烙铁架。。。子项目2:制作随动机械臂材料:暂时还没买烙铁架。。。11子项目2:制作随动机械臂准备工作:1.将程序校检后拷入板子2.先将舵机编号,再将电位器按照舵机顺序编号3.将杜邦线与电位器连接好(杜邦线母头可以正好插入电位器引脚)4.将舵机杜邦线的母头改造为公头(这是因为Arduino板子上的连接口全部都是母头,所以舵机连不上的缘故,强烈建议Arduino将来出带公头的板子!改造接线花了我不少时间……)图7,程序的校检图8,电位器编号和舵机的编号图9,接头被破坏时的惨状……图10,改造后的接口(中间插上细铁丝再焊牢,再包上绝缘胶布)1234子项目2:制作随动机械臂准备工作:图7,程序的校检图8,电位12子项目2:制作随动机械臂1.将舵机摆臂以合适角度固定在舵机上。正式开始搭建!!子项目2:制作随动机械臂1.将舵机摆臂以合适角度固定在舵13子项目2:制作随动机械臂2.用自攻螺丝在二号三号舵机的侧部中央钻孔(力气活),但注意不要伤到里面的电路!正式开始搭建!!子项目2:制作随动机械臂2.用自攻螺丝在二号三号舵机的侧14子项目2:制作随动机械臂3.如图搭建机械臂,注意小臂是用旧的电池架弯曲制成,如果没有,可以找相似的材料代替。搭建完毕后要注意将线绕整齐,不要妨碍到机械臂的动作。子项目2:制作随动机械臂3.如图搭建机械臂,注意小臂是用旧的15子项目2:制作随动机械臂发挥你的想象力!图11,可以给机械臂装上不同零件,让它更像一只手臂子项目2:制作随动机械臂发挥你的想象力!图11,可以给机械臂16子项目2:制作随动机械臂图12,肩部特写2号舵机
3号舵机图13,肘部特写4号舵机子项目2:制作随动机械臂图12,肩部特写2号舵机17子项目2:制作随动机械臂4.按照原理图逐步搭建电路图12,一个关节控制电路的搭建按照原理图搭建电路,注意:一号电位器信号输出端接A0;二号电位器接A1;三号电位器接A4;四号接A5。一号舵机信号输入端接A9;二号接A10;三号接A11,四号接A13。千万不要接错!子项目2:制作随动机械臂4.按照原理图逐步搭建电路图12,一18子项目2:制作随动机械臂5.制作操纵杆图13,将电位器依次按照舵机的位置用强力胶粘住(最快的方法但不是最好的)注意:一定要搞清顺序,否则舵机的转动方向可能与电位器相反子项目2:制作随动机械臂5.制作操纵杆图13,将电位器依次按19子项目2:制作随动机械臂图14,连接完成!子项目2:制作随动机械臂图14,连接完成!20子项目2:制作随动机械臂想了解更多??QQ号:844233041视频稍后发!!欢迎交流!!子项目2:制作随动机械臂想了解更多??21项目介绍课程作业项目名称:基于单片机系统的四自由度随动机械臂子项目:(1)了解ArduinoLeonardo这款硬件开发平台;(2)制作随动机械臂(3)了解SSC32路舵机控制器的用法;项目介绍:项目旨在制作一台小型四自由度机械臂,控制方式为随动控制(即用一种用电位器制作操纵杆,使舵机摆过的角度电位器的旋钮,从而达到机械臂跟随操纵杆运动的一种控制方式),此机械臂通过利用ArduinoLeonardo这款硬件开发平台作为处理器,电位器为输入设备,舵机为输出设备,搭建起以ArduinoLeonardo为核心的机械臂系统。项目介绍课程作业项目名称:基于单片机系统的四自由度随动机械臂22图2,机械臂主体图1,机械臂主体和Arduino连接
实验视频链接图2,机械臂主体图1,机械臂主体和Arduino连接23子项目1:什么是ArduinoLeonardo?图三,我所用的ArduinoLeonardoArduinoLeonardo的处理器核心是ATmega32u4,同时具有20路数字输入/输出口(其中7路可作为PWM输出,12路模拟输入),一个16MHz晶体振荡器,一个USB接口,一个电源插座,一个ICSPheader和一个复位按钮。子项目1:什么是ArduinoLeonardo?图三,我所24子项目1:什么是ArduinoLeonardo?概要处理器ATmega32u4工作电压5V输入电压(推荐)7-12V输入电压(范围)6-20V数字IO脚20(其中7路作为PWM输出)模拟输入脚12IO脚直流电流40mA3.3V脚直流电流50mAFlashMemory32KB(ATmega32u4,其中4KB用于bootloader,即引入程序)SRAM2.5KB(ATmega32u4)EEPROM1KB(ATmega32u4)工作时钟16MHz
电源ArduinoUNO可以通过2种方式供电,而且能自动选择供电方式外部直流电源通过电源插座供电。USB接口直接供电。存储器ATmega32u4包括了片上32KBFlash,其中4KB用于Bootloader。同时还有2.5KBSRAM和1KBEEPROM。USB接口外接电源接口子项目1:什么是ArduinoLeonardo?概要25子项目1:什么是ArduinoLeonardo?输入输出20路数字输入输出口:工作电压为5V,每一路能输出和接入最大电流为40mA。每一路配置了20-50K欧姆内部上拉电阻(默认不连接)。除此之外,有些引脚有特定的功能串口信号RX(0号)、TX(1号):与内部ATmega32U4USB-to-TTL芯片相连,提供TTL电压水平的串口接收信号。外部中断(2号和3号):触发中断引脚,可设成上升沿、下降沿或同时触发。脉冲宽度调制PWM(3、5、6、9、10、11、13):提供7路8位PWM输出。SPI(10(SS),11(MOSI),12(MISO),13(SCK)):SPI通信接口。LED(13号):Arduino专门用于测试LED的保留接口,输出为高时点亮LED,反之输出为低时LED熄灭。模拟输入A0到A5、A6到A11:每一路具有10位的分辨率(即输入有1024个不同值),默认输入信号范围为0到5V,可以通过AREF调整输入上限。除此之外,有些引脚有特定功能AREF:模拟输入信号的参考电压。Reset:信号为低时复位单片机芯片。通信接口串口:ATmega32U4内置的UART可以通过数字口0(RX)和1(TX)与外部实现串口通信;ATmega32U4可以访问数字口实现USB上的虚拟串口。TWI(兼容I2C)接口SPI接口物理特征ArduinoUNO的最大尺寸为2.7x2.1inches。开发环境Arduino1.0.1开发语言为C语言图四,开发环境子项目1:什么是ArduinoLeonardo?输入输出图26子项目2:制作随动机械臂原理图:VVVVVVVVVUSB(连至电脑)AnalogInput(PWM)AnalogInputArduinoLeonardoVV+=5VV+=5V舵机(servo)有三条接线,分别为信号线(signal),电源线(V++)和地线signal电位器(pot)有三根线,其中电刷连接的变阻线接板子的模拟输入子项目2:制作随动机械臂原理图:VVVVVVVVVUSB(连27子项目2:制作随动机械臂实际连接图(以一号舵机为例):舵机电位器子项目2:制作随动机械臂实际连接图(以一号舵机为例):舵机电28子项目2:制作随动机械臂程序源代码(一个舵机)
#include<Servo.h>//开发环境Arduino1.0.1中有此库
Servomyservo;//创建一个舵机项目(myservo)以操控一个舵机
intpotpin=0;//模拟输入接口0号口接电位器intval;//引入变量读取电位器输入的电压值
voidsetup(){myservo.attach(9);//把舵机连接至九号PWM输出口上
}
voidloop(){val=analogRead(potpin);//从电位器上读取电压值(从0到1023)val=map(val,0,1023,0,179);//用map函数将电压值转化成要控制的舵机的转动角度
myservo.write(val);//
将输出角度读出控制舵机转动delay(15);//等待舵机达到指定位置}子项目2:制作随动机械臂程序源代码(一个舵机)29子项目2:制作随动机械臂当控制四个舵机时,程序变成:#include<Servo.h>
Servomyservo1;Servomyservo2;Servomyservo3;Servomyservo4;
intpotpin1=0;intpotpin2=1;intpotpin3=2;intpotpin4=3;intval1;intval2;intval3;intval4;
voidsetup(){myservo1.attach(9);myservo2.attach(10);myservo3.attach(11);myservo4.attach(13);}
voidloop(){val1=analogRead(potpin1);val2=analogRead(potpin2);val3=analogRead(potpin3);val4=analogRead(potpin4);val1=map(val1,0,1023,0,179);val2=map(val2,0,1023,0,179);val3=map(val3,0,1023,0,179);val4=map(val4,0,1023,0,179);myservo1.write(val1);myservo2.write(val2);myservo3.write(val3);myservo4.write(val4);delay(15);}图5,Arduino1.0.1中的四自由度机械臂随动控制程序在制作硬件之前,可以现将此程序拷入板子子项目2:制作随动机械臂当控制四个舵机时,程序变成:图5,A30子项目2:制作随动机械臂材料:1.ArduinoLeonardo板一个,miniUSB数据线一条(接电脑用)。2.舵机:普通模拟180度舵机一个(盛辉mg996R即可);9g小型舵机2个;2.5g微型舵机一个。3.电位器4个(1K1W,其实具体型号无所谓,1K左右的低功耗的就行,旋转角尽量接近180度,因为选取的舵机都是180度的舵机)子项目2:制作随动机械臂材料:31子项目2:制作随动机械臂材料:4.杜邦线若干(公母头的都要有哦)。5.舵机摆臂若干,各种型号螺丝若干。工具各种螺丝刀(必须的),强力胶水(加固用),电烙铁,焊锡等技术宅必备电工用具。暂时还没买烙铁架。。。子项目2:制作随动机械臂材料:暂时还没买烙铁架。。。32子项目2:制作随动机械臂准备工作:1.将程序校检后拷入板子2.先将舵机编号,再将电位器按照舵机顺序编号3.将杜邦线与电位器连接好(杜邦线母头可以正好插入电位器引脚)4.将舵机杜邦线的母头改造为公头(这是因为Arduino板子上的连接口全部都是母头,所以舵机连不上的缘故,强烈建议Arduino将来出带公头的板子!改造接线花了我不少时间……)图7,程序的校检图8,电位器编号和舵机的编号图9,接头被破
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国铌酸锂行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国钢筋剪板机行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国轿车和掀背车AVN行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国轮胎行业市场深度调研及前景趋势与投资研究报告
- 2025-2030中国足浴器行业市场深度调研及发展趋势和前景预测研究报告
- 2025-2030中国超声心动图(ECG)设备行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国血液稀释剂行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国蛋糕模具行业市场发展趋势与前景展望战略研究报告
- 个人近期月底工作总结
- 2025-2030中国药用级藻蓝蛋白行业市场发展趋势与前景展望战略研究报告
- 钢铁公司Q195作业指导书
- 变压器、发电机容量计算
- 口腔科诊断证明书模板
- 中考物理“极值”与“取值范围”问题专题训练
- 2009年安徽省中考化学试卷【含答案可编辑】
- 越南工业到2025年发展战略及到2035发展展望(提到钢铁)
- 河北省用人单位录用人员身份核查登记表
- 《给教师的100条建议》电子书
- 老视的机制及治疗的研究进展
- VDA6.3的P2-7条款
- 工程联系单表格(模板)
评论
0/150
提交评论