MegaPI制作Delta机械臂
我是一名Arduino/Edison用户。平常比较熟悉Arduino的使用和编程。对于给Arduino UNO, Mega2560等单片机编程,需要弄清楚PIN端口 IO1-13, A0-A5,这些端口的位置,再相应读写端口状态,就可以做到一些基本的功能。Intel Edison也类似,只是开发环境和编程开发界面有了一个变化。但关键都在弄清端口有哪些,怎样调用。但是,对于MakeBlock MegaPI这样的运动控制板,它集成了很多功放和步进控制芯片,在板卡接口上又引入了工业标准接口。MegaPI的PIN端口,更是远比Arduino复杂。这对于我们这样较少接触Arduino扩展板的用户,感觉比较陌生。怎样调用这么多的端口,我感到无从下手。
拿到MegaPI后,我查阅官方资料。开始逐步了解这块功能强大的运动控制主板。随着对MegaPI学习的不断深入。我在arduino中文社区的帮助下,自备材料,使用开源方案做出了一台Delta机械臂,并可以做基本的动作控制。
测试视频:
http://player.youku.com/player.php/sid/XMTczODk1Njg4NA==/v.swf
以下是MegaPI相关知识的学习,和Delta机械臂的详细制作过程。
1 MakeBlock MegaPI板卡性能指标、电路结构、软硬件接口情况
首先我在官网 www.makeblock.cc上查到MegaPi的端口编号。
有了端口号示意图,在Arduino IDE里面编程,就能想在Arduino里面操作操作IO1-13那样,
pinMode(), digitalWrite()这样的函数单独操作这些端口。
以下是MegaPI调用这些端口的定义文件在 ..\Arduino\libraries\makeblock\src:
#define PORT_1(0x01)
#define PORT_2(0x02)
#define PORT_3(0x03)
#define PORT_4(0x04)
#define PORT_5(0x05)
#define PORT_6(0x06)
#define PORT_7(0x07)
#define PORT_8(0x08)
#define PORT_9(0x09)
#define PORT_10 (0x0a)
#define M1 (0x09)
#define M2 (0x0a)
#define PORT_11 (0x0b)
#define PORT_12 (0x0c)
#define PORT_13 (0x0d)
#define PORT_14 (0x0e)
#ifdef MeMbot_H
#define PORT_RGB (0x05)
#define PORT_LightSensor (0x06)
#endif
#define SLOT1 (1)
#define SLOT2 (2)
#define SLOT3 (3)
#define SLOT4 (4)
#define SLOT_1SLOT1
#define SLOT_2SLOT2
#define SLOT_3SLOT3
#define SLOT_4SLOT4
MegaPI与Arduino标准板卡的另一个区别,在于其SLOT插槽,连接电机,方便插拔。这个SLOT插槽,官网在MegaPI上没有注明型号。但在官网另一产品上,有标注类似绿色插槽是HT5.08标准的。注意,MegaPI的插槽不一样。而MegaPI的SLOT插槽是更小的HT3.96标准插槽。
为了连接自己的步进电机,我第一次买错,买成HT5.08的。浪费了一笔采购费。
HT插头和MegaPI实拍:
MegaPI的电机供电接口,和Arduino一样使用标准的同心圆直流电源接口,外负内正。但是MegaPI可以承受比9V更高的电压:12V。
我购买选用这种转接口,为MegaPI电机供电。
在搞懂MegaPI的接口后,在主板上插上相应的步进电机、编码电机驱动芯片。电机接上SLOT接口,就可以让电机转起来了。
2 对顺利使用MegaPI所需要做的准备。
首先我阅读了MakeBlock的官网和官方github源代码库。
可以在
https://github.com/Makeblock-off ... oardStepperTest.ino
找到该例程,在Arduino IDE中,也可以找到该程序。
它可以控制步进电机做旋转运动。
/**
* \par Copyright (C), 2012-2016, MakeBlock
* @file MegaPiOnBoardStepperTest.ino
* @authorMakeBlock
* @version V1.0.0
* @date 2016/05/06
* @brief Description: this file is sample code for Stepper Driver device.
*
* Function List:
*
* 1. void MeStepper::moveTo(long absolute);
* 2. void MeStepper::move(long relative);
* 3. boolean MeStepper::run();
* 4. void MeStepper::setMaxSpeed(float speed);
* 5. void MeStepper::setAcceleration(float acceleration);
* 6. void MeStepper::setMicroStep(int8_t value);
* 7. void MeStepper::enableOutputs(void);
*
* \par History:
* <pre>
* <Author> <Time> <Version> <Descr>
* Mark Yan 2016/05/06 1.0.0 build the new.
* </pre>
*/
#include "MeMegaPi.h"
#include <SoftwareSerial.h>
MeStepperOnBoard stepper(SLOT_1);
void setup()
{
Serial.begin(9600);
// Change these to suit your stepper if you want
stepper.setMaxSpeed(1000);
stepper.setAcceleration(20000);
stepper.setMicroStep(16);
stepper.enableOutputs();
}
void loop()
{
if(Serial.available())
{
char a = Serial.read();
switch(a)
{
case '0':
stepper.moveTo(0);
break;
case '1':
stepper.moveTo(200);
break;
case '2':
stepper.move(50);
break;
case '3':
stepper.move(100);
break;
case '4':
stepper.move(200);
break;
case '5':
stepper.move(400);
break;
case '6':
stepper.move(600);
break;
case '7':
stepper.move(4000);
break;
case '8':
stepper.move(8000);
break;
case '9':
stepper.move(3200);
break;
}
}
stepper.run();
}
3 试用MegaPI控制步进电机,研制电路接线可靠性。
将连接好HT3.96插头的步进电机插入MegaPI,接好MegaPI电源,USB线,即可测试步进电机。
没有找到合适HT3.96接口步进电机的同学,建议直接在MakeBlock旗舰店购买。质量更有保证。
http://item.jd.com/10066690351.html
测试视频如下:
http://player.youku.com/player.php/sid/XMTYzNjMwOTQ5Ng==/v.swf
注意,在使用MegaPI时,记住要安装散热设施。MegaPI自带电机驱动芯片,发热量较大,良好的散热是保护芯片长久耐用的好方法。
经测试,电机能够运动。接下来,就可以设计制作机械臂,并用步进电机加以驱动了。
4 制作Delta机械臂的初步设想,设计图纸,源程序。
MegaPI自带4路步进电机驱动SLOT插座,使用它控制机器人是个很好的选择。它连接电机,连线简单,集成度高。选择它控制Delta机械臂,实际需要使用3个电机控制插座。
Delta机械臂方面,因为Delta3D打印机设计方案比较成熟,目前销量大,零配件便宜。所以我打算按照Delta3D打印机方案制作机械臂,只是摒弃掉打印机的吐丝机。只要其机械臂运动系统即可。
我选择repreappro.com提供的Delta3d打印机方案Fisher,来制作我的Delta机械臂系统。该方案的官方制作文档在这里:
https://reprappro.com/documentation/fisher-1/
reprappro是开源3D打印机的创始人Adrian Bowyer设立的企业。
现在的开源桌面3D打印机方案实际最初都源自reprap。
RepRap的设计思想,是运用最少的工业化零件,只依靠3D打印机和激光切割机,设计出器械。让大家体会DIY的乐趣。大家现在能便宜使用的桌面型3d打印机,以前其机械零件繁多,成本很高,所以该行业只有Strasys和3DSystem才愿意投资做研发生产。Adrain的reprap项目花了很多功夫,机械设计上即便使用公差大,精度低3D打印件和激光切割件,机械也可以正常运转。大幅降低了3D打印机的制作成本。
选择reprappro fisher制作机械臂,可以重用到我的老式reprappro mendel 2的零件。我把老的打印机M8光轴拆下,即可组装成一台Delta机械臂。螺钉体系也是原来的M3螺钉。多么巧妙的再利用。
5 delta机械臂的制作过程
首先,按照Fisher说明文档BOM零件清单,打印相关零件。
我使用玉米塑料SLA来打印零件。这样,零件尺寸更加精确。而且,我的ABS塑料打印机reprappro mendel 2,上文所述,已经被我拆掉用来制作本机械臂了。-__-!
需要打印的零部件在这里:Delta机械臂零件
其中挤出机Extruder的零件不要打印,因为我们只要3D打印机的Delta机械臂部分,不要它吐塑料丝。
另外准备好LM8UU直线轴承6个,套在M8光轴上使用。M8光轴长度420毫米6根。
准备好MXL同步轮和同步带。这些都是3d打印机常用零件,在淘宝上几十块钱就能买到,价格便宜。精度又不低,非常有益于自己DIY制作机械。
需要用激光切割机制作的零件在这里:Delta机械臂所需激光切割亚克力件
在Arduino.cn论坛的支持下,论坛为我定做了以上激光切割亚克力零件。非常感谢论坛支持我们学习开源硬件设计,非常敬佩论坛工作人员的专业态度。
接下来开始按照官方文档拼装Delta机械臂的机架。
准备好材料:光轴,螺钉,和Bracket零件。
安装说明文档拼装:
装好3个电机和光轴后,拿出激光切割的亚克力件,拼装底盘。
底盘插入到电机光轴上,用3D打印件Kinematic Mount固定。
螺丝要用内六角螺丝固定,用劲扭,这个螺丝固定好底盘后,很牢固。
底盘固定好后的俯视图是这样。
注意别压着电机线。
以上是Delta机械臂和官方说明文档图片的比对。结构上没有太大问题。
下面制作开始机械臂了。
首先这里难倒了我。
MegaPI需要控制步进电机提拉滑块,滑块带动机械臂运动。而滑块和机械臂的连接使用球形关节。
根据我查看淘宝上Delta机械臂的设计方案,都是使用现成的球型关节轴承。
但是reprap官方为了DIY精神,选择自己制作球形关节,它建议使用钢球,打孔攻丝。
就是这一步,把钢球打半孔后攻丝,上到M3螺钉上面,做成球形关节。
我请教了贵州大学的机加工老师后才发现:
妈呀?钢球可是经过淬火热处理工艺的,表面强度高,根本不适合打孔攻丝。需要重新加热,在空气中缓慢冷却,才能软化表面,用车床打孔。吐血啊。
又联系淘宝,有唯一一家店面承接钢球开孔攻丝,人家制作12mm直径以上的。reprap要求6mm直径的小球开孔,这么精细的活儿,又只有很小的加工订单量,老板直接不干。
多翻思索,决定换为POM塑料小球打孔。同样润滑,而且POM塑料方便机加工。目前笔者我跑了2个周末。打孔已经成功,攻丝弄不了,决定开孔后直接用螺丝攻上去,霸王硬上弓......
-_-!!!
下周末去机加工车间,再进行球关节制作,随后汇报情况。
将POM塑料球在车床上夹紧,选择M2.7-2.8直径范围钻头,1400转/分钟转速,
1.在塑料球顶用顶针车出凹陷,方便第2步操作钻头定位。
2.顶针更换为上述钻头,钻头给进4mm,打半孔。
M3螺钉即可直接自攻方式上入半孔小球,造出球形关节。M3×16mm的螺钉也已经买到。拼装后关节臂长56mm+3mm :funk:有点长,实在拧不进去了。
接下来做好3个。
对做好球型关节的滑块零件继续装配,在“双眼”处嵌入LM8UU直线轴承。
就像这样:
轴承装入后用M3螺钉固定,滑块零件上同样留有M3螺钉和螺帽位置,按照图中位置装入拧紧固定轴承。
然后将滑块按照轴承位置插入Delta结构塔的M8光轴。保证滑块能够上下正常滑动。
滑块上的球型关节安装方向要注意,选择向内对准圆心。
安装好滑块后,我们需要对Delta结构塔封顶。
首先找出封顶零件1285,和随动轮装配零件1243:
1285需要装配到每一对M8轴承上,1243和随动轮组合挂载到1285上。
1243随动轮这样装配:
1243V型槽一侧为六方型开口,嵌入一个M3螺帽,另一侧为圆形开口,嵌入M3螺钉,螺钉中间穿入两个428轴承,轴承外侧用垫圈固定位置,作为后面要说到的MXL步进皮带的随动轮。
然后将1243按这个方向挂载到1285零件上。1243留有M3螺母位置,1285留有M3螺钉位置,轻轻上好,不要拧紧,这个步骤1243零件方向为3D打印堆集方向,强度不高,容易开裂。
以上是1243和1285装配好后的样子。
1285零件也有两对M3螺钉需要装配,用在封顶时固定M8光轴对。所以保持螺钉螺帽宽松。
好了,准备好3对1285+1243:
接下来开始封顶!
将1285的M8光轴预留孔对准光轴,装入后拧紧M3螺钉固定。
接着安装效应器球型关节。关节安装方法和安装尺寸完全和滑块相同。取出效应器零件,上面留有M3螺钉孔,插入M3*16mm螺钉,并拧上螺帽固定好位置,螺钉顶部上入球型关节。每一对球关节距离等同滑块球关节距离。
取出2只激光切割好的亚克力半机臂零件,用M3*8mm螺钉螺母轻轻拧住。合并为一只。
共需要制作6只机臂。
用手扳开机臂末端,夹住球型关节。
每个滑块左右两侧球型关节与效应器左右两侧球型关节分别连接,形成可以移动的平行四边形连接。
平行四边形连接是可以平移滑动的,我们用手移动滑块测试一下,保证效应器正常随动。
http://player.youku.com/player.php/sid/XMTcxNTY3NjYwMA==/v.swf
然后使用MegaPI的Sketch例程序Me_MegaPiOnBoardStepper连接每个步进电机进行测试:
http://player.youku.com/player.php/sid/XMTcxOTEwOTUzMg==/v.swf
经测试,电机能够带动Delta机械臂运动。
接下来,我们准备给MegaPI烧录Marlin固件控制程序。
Marlin是3D打印机固件控制程序的一种。
为MegaPI准备的Marlin固件在这里:
https://github.com/Makeblock-official/Marlin-for-mGiraffe
将整个目录下载回来,用Arduino Sketch打开marlin.ino文件,目录中其他相关文件会跟着打开。
Marlin可以接受G代码,翻译,控制步进电机推动机械臂运动,并挤压塑料丝,形成打印件。
为MegaPI准备的Marlin硬件是用于控制MakeBlock的mGiraffe Delta 3D打印机套件的。
这次我们只是自己组装一台简易Delta机械臂,使用机械臂的运动功能,不涉及塑料融化吐丝,所以修改Marlin程序的机械部分参数,将Makeblock mGiraffe的机械臂尺寸改为Reprappro Fisher的尺寸即可实现控制。
该尺寸的修改说明,我搜索到这篇帖子
http://tieba.baidu.com/p/3021889363
在marlin目录下有Configuration.h文件
以上4个字段需要修改。
经测量,对上示意图的:
第一个参数修改为160mm
第二个参数修改为125mm
第三个参数修改为28mm
第四个参数修改为18mm
另外,机械臂的安全移动半径为60mm
//===========================================================================
//============================== Delta Settings =============================
//===========================================================================
// Enable DELTA kinematics and most of the default configuration for Deltas
#define DELTA
#if ENABLED(DELTA)
// Make delta curves from many straight lines (linear interpolation).
// This is a trade-off between visible corners (not enough segments)
// and processor overload (too many expensive sqrt calls).
#define DELTA_SEGMENTS_PER_SECOND 120
// NOTE NB all values for DELTA_* values MUST be floating point, so always have a decimal point in them
// Center-to-center distance of the holes in the diagonal push rods.
//#define DELTA_DIAGONAL_ROD 240.0 // mm
#define DELTA_DIAGONAL_ROD 160.0 // mm
// Horizontal offset from middle of printer to smooth rod center.
//#define DELTA_SMOOTH_ROD_OFFSET 165.0// mm
#define DELTA_SMOOTH_ROD_OFFSET 125.0// mm
// Horizontal offset of the universal joints on the end effector.
//#define DELTA_EFFECTOR_OFFSET 35.0 // mm
#define DELTA_EFFECTOR_OFFSET 28.0 // mm
// Horizontal offset of the universal joints on the carriages.
//#define DELTA_CARRIAGE_OFFSET 12 // mm
#define DELTA_CARRIAGE_OFFSET 18 // mm
// Horizontal distance bridged by diagonal push rods when effector is centered.
#define DELTA_RADIUS (DELTA_SMOOTH_ROD_OFFSET-DELTA_EFFECTOR_OFFSET-DELTA_CARRIAGE_OFFSET)
// Print surface diameter/2 minus unreachable space (avoid collisions with vertical towers).
//#define DELTA_PRINTABLE_RADIUS 90
#define DELTA_PRINTABLE_RADIUS 60
#endif
我选用的电机同步带为MXL标准同步带,MXL20齿同步轮。
MXL同步带的每一齿距离为2.032mm
我选用的同步轮为20齿。
这也需要在Configuration.h文件相应位置作修改。
#define XYZ_BELT_PITCH 2.032
//#define XYZ_PULLEY_TEETH 18
#define XYZ_PULLEY_TEETH 20
以上参数改好之后,在arduino sketch IDE中运行Marlin代码。将Marlin固件传输烧录到MegaPI。
点击串口监视器,进入串口调试。
选择输入结束符 NL CR 通讯速率115200。
Marlin固件显示以下文字,并等待输入。
上图Marlin界面启动信息全文:
start
echo:Marlin 1.1.0-RC3
echo: Last Updated: 2015-12-01 12:00 | Author: (Makeblock, mGiraffeV1.0)
Compiled: Sep 12 2016
echo: Free Memory: 3394PlannerBufferBytes: 1232
echo:Hardcoded Default Settings Loaded
echo:Steps per unit:
echo:M92 X157.48 Y157.48 Z157.48 E185.20
echo:Maximum feedrates (mm/s):
echo:M203 X500.00 Y500.00 Z500.00 E25.00
echo:Maximum Acceleration (mm/s2):
echo:M201 X9000 Y9000 Z9000 E10000
echo:Accelerations: P=printing, R=retract and T=travel
echo:M204 P3000.00 R3000.00 T3000.00
echo:Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum XY jerk (mm/s),Z=maximum Z jerk (mm/s),E=maximum E jerk (mm/s)
echo:M205 S0.00 T0.00 B20000 X20.00 Z20.00 E5.00
echo:Home offset (mm):
echo:M206 X0.00 Y0.00 Z0.00
echo:Endstop adjustment (mm):
echo:M666 X0.00 Y0.00 Z0.00
echo:Delta settings: L=delta_diagonal_rod, R=delta_radius, S=delta_segments_per_second
echo:M665 L160.00 R79.00 S120.00
echo:Material heatup parameters:
echo:M145 M0 H180 B70 F255
echo:M145 M1 H240 B100 F255
echo:PID settings:
echo:M301 P16.66 I1.19 D58.14 C100.00 L20
echo:Filament settings: Disabled
echo:M200 D3.00
echo:M200 D0
echo:Z-Probe Offset (mm):
echo:M851 Z-1.00
echo:Bed correction(mm):
echo:; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00
echo:; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00
echo:; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00
echo:; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00
echo:; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00
echo:; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00
echo:; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00
echo:; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00
echo:; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00; 0.00
echo:SD init fail
这样,MegaPI的Marlin固件就烧写好了。通过串口发送G代码命令,MegaPI中的Marlin固件就可以接收处理,并驱动Delta机械臂做相应运动了。
下面我们发送G代码命令到MegaPI,驱动Delta机械臂进行测试:
我们要使用的G代码命令为:
G1 S2 X5 Y0 Z0 F500
X___ Y___ Z____ 这是需要机械臂到达的XYZ坐标。输入正负数都可以。
F___这个是机械臂的运动速度。
OK。我们开始测试。
http://player.youku.com/player.php/sid/XMTcxOTEwOTUzMg==/v.swf
测试基本完成后,我们使用Processing做一个小程序,在电脑上用键盘直接控制机械臂。
借助论坛网友@夏夜繁星 控制四自由度舵机机械臂的程序:Processing与arduino互动之4自由度桌面码垛机
我对该程序进行了简化,不需要计算关节动力学,只是把XYZ数值通过串口发送给MegaPI而已:
大家可从https://github.com/qq95538/DeltaArm目录下载最新版本。
/**
processing control a Marlin Delta 3D printer arm
by b.h. song
190808149@qq.com
*/
/**
*processing control a 4-DOF mechanical arm
*by jorneryChen
*
*my emial address is 1274104408@qq.com
*/
import processing.serial.*;
Serial port;
boolean bToSend;
String inString;
int lf = 10; // ASCII linefeed
int x=0;
int y=0;
int z=0;
int a=2;
PFont font;
void setup()
{
size(500,500);
frameRate(53);
printArray(Serial.list());
port = new Serial(this, Serial.list(), 115200);
port.bufferUntil(lf);
smooth();
}
void draw()
{
inter_face();
picture();
if(bToSend) send_data();
}
void inter_face()
{
background(255);
textSize(40);
fill(245,12,32);
text("C",5,40);
fill(38,245,12);
text("L",35,40);
fill(12,91,245);
text("Y",55,40);
fill(66,204,227);
textSize(15);
text("Redesigned by song, which was an originally u-arm",100,20);
text("similar robot control program authorized by yao.",100,40);
textSize(30);
fill(211,191,0);
text("this interface shows data only",5,80);
fill(0);
textSize(20);
text("X=",5,110);
text(int(x),35,110);
text("Y=",85,110);
text(int(y),115,110);
text("Z=",165,110);
text(int(z),195,110);
}
void picture()
{
strokeWeight(4);
fill(255);
rect(5,160,490,320);
ellipse(170,320,300,300);
stroke(0);
line(415,170,415,470);
float m=map(x,-100,100,40,300);
float n=map(y,-100,100,450,190);
fill(0,0,150);
ellipse(m,n,30,30);
float l=map(z,-100,100,470,170);
l=constrain(l,170,470);
ellipse(415,l,30,30);
}
void keyPressed()
{
switch(key) {
case 'A':
x-=a;
break;
case 'D':
x+=a;
break;
case 'W':
y+=a;
break;
case 'S':
y-=a;
break;
case 'I':
z+=a;
break;
case 'K':
z-=a;
break;
}
}
void keyReleased()
{
bToSend=true;
}
void send_data()
{
String s;
s = "G1 S2 X" + x + " Y" + y + " Z" + z + " F1000";
println(s);
port.write(s);
port.write(13);
port.write(10);
bToSend=false;
}
void serialEvent(Serial p) {
inString = p.readString();
print(inString);
}
电脑插上MegaPI,运行程序:
W前S后A左 D右, I上 K下。控制机械臂运动。
OK, 可以进行测试了:
http://player.youku.com/player.php/sid/XMTczODk1Njg4NA==/v.swf
测试成功。
在哪弄的?拍个实物图看看呀。 fenggr 发表于 2016-7-20 16:45
在哪弄的?拍个实物图看看呀。
您好,帖子正在写作中,现在实物图已上传。正在制作,还没做好。请查看。 fenggr 发表于 2016-7-20 16:45
在哪弄的?拍个实物图看看呀。
您好,已经制作好球型关节,请查看最新进度。 大神,如果用mega2560+ramps1.4的主板来做机器人的marlin固件源该怎么改啊 981510493 发表于 2016-10-21 10:03
大神,如果用mega2560+ramps1.4的主板来做机器人的marlin固件源该怎么改啊
ramps1.4是最常用的扩展版了,marlin硬件有现成的3D打印机配置方案。直接在官方网站下载烧录即可使用。改造控制机器人,至少可以配合控制3路电机,还可以独立控制1路电机,把机器人关节运动行程,输入到G代码中,即可将3D打印机控制器当作机器人的控制器。 大神,我用MegaPi用Arduino IDE上传程序时出现错误,如下:
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x56
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x65
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x72
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x73
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x69
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x6f
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x6e
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x3a
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x20
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x30
上传项目出错
Arduino 选择的UNO
com口没错
编译器用的是AVRISP MKII MegaPi使用Mega2560核心。应该在IDE选Mega2560. 来向大神学习了 楼主还在吗,想问下这整个过程是什么样的,谢谢!
页:
[1]
2