Download - SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

Transcript
Page 1: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

SKU:RB-01C082 StarDuino 控制器目录目录 [隐藏]

1 产品概述2 产品参数3 接口介绍4 基本例程

4.1 Arduino IDE的使用4.2 板载L灯实验4.3 按键与LED的实验4.4 舵机实验

4.4.1 硬件接线4.4.2 例子程序4.4.3 程序效果

4.5 多舵机实验4.5.1 硬件连接4.5.2 例子程序4.5.3 程序效果

4.6 电机驱动实验4.6.1 硬件接线4.6.2 例子程序4.6.3 程序功能

5 应用视频6 产品相关推荐

6.1 产品购买地址6.2 周边产品推荐6.3 相关问题解答6.4 相关学习资料

产品概述

StarDuino 是以 ATmega32U4 为主芯片,基于 Leonardo 内核的多功能控制板。StarDuino 不但具有完整兼容 Arduino Leonardo 的特性,还集成了 2 路电机驱动、4 路舵机驱动、模拟 IO 扩展口、数字 IO 扩展、I2C 总线接口、串口接口等功能。是一款功能全面的控制板,可以应用于小

阅读 查看源代码 查看历史页面 讨论 搜索

首页

社区专页

新闻动态

最近更改

随机页面

帮助

工具箱

链入页面

相关更改

特殊页面

打印版本

永久链接

页面信息

登录

PDFmyURL lets you convert a complete website to PDF automatically!

Page 2: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

车驱动平台,可以单独驱动两路电机。

产品参数

微控制器:ATmega32u4引导程序:Arduino Leonardo工作电压:5V直流输出:5V / 3.3VDC 输入电压(推荐):7-12VDC 输入电压(极限):6-24V数字端口外部电源电压:5-20VDigital I/O(数字):23Analog I/O(模拟):12IO引脚直流电流:40mA3.3V引脚直流电流:50mA电机驱动模块恒定输出电流:2A产品尺寸:89 x 79 x 20 mm固定孔:4 * M3

接口介绍

PDFmyURL lets you convert a complete website to PDF automatically!

Page 3: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

StarDuino 控制器管脚说明图

1.Digital I/O(数字): D0 - D16,A0 - A5 2.Analog I/O(模拟): A0 - A5,A6 - A11(在数字接口 4,6,8,9,10,12 上)) 3.PWM口:7 个 (数字引脚 3,5,6,9,10,11 和 13) 4.支持 USB 供电与外部供电自动切换 5.支持 ISP 下载功能 6.支持 1 组 I2C / TWI 接口 7.支持 2 路电机驱动,峰值电流 2A,6 个控制 I/O 使用跳线切换 8.支持 4 路舵机驱动

PDFmyURL lets you convert a complete website to PDF automatically!

Page 4: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

9.支持 1 路蜂鸣器驱动

基本例程

Arduino IDE的使用的使用Arduino IDE是Arduino产品的软件编辑环境。简单的说就是用它来写代码,下载代码的程序。任何基于Arduino产品都需要下载代码后才能运转。我们所搭建的硬件电路是辅助代码来完成的,两者是缺一不可的。如同人通过大脑来控制肢体活动是一个道理。如果控制器中的程序就是大脑的话,外围硬件就是肢体,肢体的活动取决于大脑,所以硬件功能实现取决于代码程序。

Arduino IDE 点击下载

板载板载L灯实验灯实验StarDuino和Arduino一样,有个连接到数字口13的板载测试LED(L)!把StarDuino连到电脑上后,打开Arduino IDE,选择板卡→ArduinoLeonardo和串口→COM(选择如图2所示的端口号)。

PDFmyURL lets you convert a complete website to PDF automatically!

Page 5: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

Arduino IDE 设备端口号选择示意图

注:此界面需要你找到我的【电脑图标】→单击鼠标右键→选择【管理】 演示代码:

int ledPin = 13; // 定义LED为pin13

void setup(){ pinMode(ledPin, OUTPUT); // 设置数字端口13为输出模式}

void loop()PDFmyURL lets you convert a complete website to PDF automatically!

Page 6: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

{ digitalWrite(ledPin, HIGH); // 数字端口置高,LED亮 delay(1000); // 延时 digitalWrite(ledPin, LOW); // 数字端口置低,LED灭 delay(1000); // 延时}

程序功能:板载的L灯会每秒闪烁一次。 注:这个例子程序可以在【Arduino IDE→文件→示例→01.Basics→Blink】中找到;你也可以使用Arduino其他示例程序。

按键与按键与LED的实验的实验做一个简单的互动实验,按键按下,板载 L 灯亮,松开,板载 L 灯熄灭。按图3所示接线方式连接大按键。

PDFmyURL lets you convert a complete website to PDF automatically!

Page 7: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

按键与StarDuino连接示意图

演示代码:

int buttonPin = A0; // 定义按键为 pin A0 int ledPin = 13; // 定义LED为 pin 13

PDFmyURL lets you convert a complete website to PDF automatically!

Page 8: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

int buttonState = 0; //定义并初始化按键状态

void setup() { pinMode(ledPin, OUTPUT); // 设置数字端口13为输出模式 pinMode(buttonPin, INPUT); // 设置数字端口14为输入模式 }

void loop(){ buttonState = digitalRead(buttonPin); //读取Pin 14的状态

if(buttonState == LOW) //判断是否为低{ digitalWrite(ledPin, HIGH); //如果是低,设置L灯亮 } else { digitalWrite(ledPin, LOW); //如果是高,设置LED灯灭 }}

程序功能:按下灯亮,松开灯灭。

舵机实验舵机实验如果想让东西动起来,就离不开机电类涉笔的控制。这节实验是利用Arduino提供的Servo库进行一个舵机的操控实验

硬件接线硬件接线

PDFmyURL lets you convert a complete website to PDF automatically!

Page 9: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

单个舵机与StarDuino的连接示意图

例子程序例子程序

#include <Servo.h> // 声明调用Servo.h库

Servo myservo; // 创建一个舵机对象

int pos = 0; // 变量pos用来存储舵机位置 void setup()

PDFmyURL lets you convert a complete website to PDF automatically!

Page 10: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

{ myservo.attach(10); // 将引脚10上的舵机与声明的舵机对象连接起来} void loop() { for(pos = 0; pos < 180; pos += 1) // 舵机从0°转到180°,每次增加1°{ myservo.write(pos); // 给舵机写入角度 delay(15); // 延时15ms让舵机转到指定位置 } for(pos = 180; pos >= 1; pos -= 1) // 舵机从180°回到0°,每次减小1°{ myservo.write(pos); // 写角度到舵机 delay(15); // 延时15ms让舵机转到指定位置 } }

程序效果程序效果

程序正常上传后,给控制器进行供电,舵机会从0°运动到 180°,再从180°转回 0°。

多舵机实验多舵机实验StarDuino数字端口扩展插座是按照舵机的线序设计的,所以可以直接控制舵机。接四个以内的小舵机时由于电流不大(运行时电流总和不超过2A),所以可以暂时使用StarDuino的电源供电,但如果StarDuino控制器控制多个大电流舵机,用StarDuino供电就不够了,这时就需要从舵机控制端口外部电源输入端供电,电源电压取决于你所需舵机的正常工作电压。

硬件连接硬件连接

PDFmyURL lets you convert a complete website to PDF automatically!

Page 11: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

多个舵机与StarDuino的连接示意图

例子程序例子程序

#include <Servo.h>

Servo servo1;Servo servo2;Servo servo3;

void setup()PDFmyURL lets you convert a complete website to PDF automatically!

Page 12: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

{ servo1.attach(10); //定义舵机1控制口为Pin10 servo2.attach(11); //定义舵机2控制口为Pin11 servo3.attach(12); //定义舵机3控制口为Pin12 Serial.begin(19200); //设串口0置波特率 Serial.print("Ready");}

void loop(){ static int v = 0; if ( Serial.available()) { char ch = Serial.read(); //读取串口数据 switch(ch) { case '0'...'9': v = v * 10 + ch - '0'; //字符换算成10进制 break; case 'a': //如果数据后带a,则表示是servo1的数据,比如串口发送85a servo1.write(v); v = 0; break; case 'b': //如果数据后带b,则表示是servo2的数据,比如串口发送90b servo2.write(v); v = 0; break; case 'c': //如果数据后带c ,则表示是servo3的数据,比如串口发送180c servo3.write(v); v = 0; break; } }}

程序效果程序效果

通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。 注:如何打开串口? 打开Arduino IDE,右上角有个放大镜的图标,鼠标放在上面会显示串口监视器,点击该图标。

PDFmyURL lets you convert a complete website to PDF automatically!

Page 13: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

打开串口后,设置串口监视器的波特率为19200。

就可以直接从串口输入相应的值了,比如我们这里输入"85a",让第一个舵机转85°。

电机驱动实验电机驱动实验

硬件接线硬件接线

StarDuino上集成了2路电机驱动,单路峰值为2A,控制芯片采用L298P,电机的电源直接由StarDuino的总电源提供。 电机控制引脚与功能说明如下表1所示:

PDFmyURL lets you convert a complete website to PDF automatically!

Page 14: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

表1:电机控制引脚与功能说明表

电机驱动电路控制端可以使用短路跳帽进行选通,用的时候接通,不用时可以断开。两个电机接线时注意将电机的两根控制线同向接入控制板的电机控制接口。

例子程序例子程序

int E1 = 5; //定义M1使能端int E2 = 6; //定义M2使能端

int M1_2 = 4; //定义M1控制端int M1_1 = 7; //定义M1控制端

int M2_1 = 8; //定义M2控制端int M2_2 = 9; //定义M2控制端

void stop(void)//停止{ digitalWrite(E1,LOW); digitalWrite(E2,LOW); }

void advance(char a,char b) //前进{ analogWrite (E1,a); //PWM调速 digitalWrite(M1_2,HIGH); digitalWrite(M1_1,LOW); analogWrite (E2,b);

PDFmyURL lets you convert a complete website to PDF automatically!

Page 15: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

digitalWrite(M2_1,HIGH); digitalWrite(M2_2,LOW);} void back_off (char a,char b) //后退{ analogWrite (E1,a); digitalWrite(M1_2,LOW); digitalWrite(M1_1,HIGH); analogWrite (E2,b); digitalWrite(M2_1,LOW); digitalWrite(M2_2,HIGH);}void turn_L (char a,char b) //左转{ analogWrite (E1,a); digitalWrite(M1_2,LOW); digitalWrite(M1_1,HIGH); analogWrite (E2,b); digitalWrite(M2_1,HIGH); digitalWrite(M2_2,LOW);}void turn_R (char a,char b) //右转{ analogWrite (E1,a); digitalWrite(M1_2,HIGH); digitalWrite(M1_1,LOW); analogWrite (E2,b); digitalWrite(M2_1,LOW); digitalWrite(M2_2,HIGH);}

void setup(void) { int i; //定义一个临时变量

for(i = 4;i <= 9;i++) //PIN4-PIN9管脚初始化 { pinMode(i, OUTPUT); } Serial.begin(9600); //设置串口0波特率}

void loop(void) { if(Serial.available() > 0) //判断串口是否接收到数据

PDFmyURL lets you convert a complete website to PDF automatically!

Page 16: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

{ char val = Serial.read();//读取串口数据

if(val!=-1) { switch(val) { case 'w'://前进 advance (100,100); //PWM调速 break; case 's'://后退 back_off (100,100); break; case 'a'://左转 turn_L (100,100); break; case 'd'://右转 turn_R (100,100); break; } delay(40); } else stop(); }}

程序功能程序功能

串口输入"w","s","a","d",电机会有相应的前进、后退、左转、右转动作。

应用视频

PDFmyURL lets you convert a complete website to PDF automatically!

Page 18: SKU:RB-01C082 StarDuino 控制器 - icxbk.comdownload.icxbk.com/201612/ca8a14546fed2e97a264fd3de20901...通过IDE中的串口助手,发送舵机度数控制舵机转动的角度,比如发送字符85a表示舵机1转动85度,发送字符180c表示舵机3转动180度。

隐私政策 关于ALSROBOT WiKi 免责声明

本页面最后修改于2016年12月5日 (星期一) 10:33。

此页面已被浏览过209次。

PDFmyURL lets you convert a complete website to PDF automatically!