“(SKU:RB-01C015A)Arduino XBee Sensor Shield”的版本間的差異
(→?演示視頻) |
(→?IIC 端口) |
||
第251行: | 第251行: | ||
====程序效果==== | ====程序效果==== | ||
LED 條形模塊掃描顯示,每個LED連續(xù)顯示亮滅 | LED 條形模塊掃描顯示,每個LED連續(xù)顯示亮滅 | ||
+ | |||
+ | ===舵機控制=== | ||
+ | ====使用硬件==== | ||
+ | * [http://gharee.com/goods-546.html Carduino UNO 控制器] * 1個 | ||
+ | * [http://gharee.com/goods-707.html Arduino XBee Sensor Shield] * 1個 | ||
+ | * [http://gharee.com/goods-90.html USB接口連接線] * 1個 | ||
+ | * [http://gharee.com/goods-105.html RB - 150MG 舵機] * 2個 | ||
+ | * [http://gharee.com/goods-728.html 滑條變阻器] * 2個 | ||
+ | * [http://gharee.com/goods-318.html USEC 3A 穩(wěn)壓器] * 1個 | ||
+ | * [http://gharee.com/goods-321.html 7.4V 1200mAh 鋰電池] * 1個 | ||
+ | ====硬件連接==== | ||
+ | * 將舵機1連接在控制器數(shù)字5引腳; | ||
+ | * 將舵機2連接在控制器數(shù)字6引腳; | ||
+ | * 滑條變阻器1連接在控制器模擬3引腳; | ||
+ | * 滑條變阻器2連接在控制器模擬4引腳; | ||
+ | * 7.4V 鋰電池連接一個 UBEC 3A 穩(wěn)壓器給舵機進行供電; | ||
+ | ====實驗代碼==== | ||
+ | 通過兩個滑條變阻器來控制二自由度舵機云臺的旋轉(zhuǎn) | ||
+ | <pre style='color:blue'>#include <Servo.h> | ||
+ | Servo servo1; | ||
+ | Servo servo2; | ||
+ | int pot1, pot2; | ||
+ | void setup() | ||
+ | { | ||
+ | servo1.attach(5); | ||
+ | servo2.attach(6); | ||
+ | servo1.write(90); | ||
+ | servo2.write(90); | ||
+ | } | ||
+ | void loop() | ||
+ | { | ||
+ | pot1 = analogRead(A3); | ||
+ | pot2 = analogRead(A4); | ||
+ | pot1 = map(pot1,0,1023,0,180); | ||
+ | pot2 = map(pot2,0,1023,0,180); | ||
+ | servo1.write(pot1); | ||
+ | servo2.write(pot2); | ||
+ | delay(15); | ||
+ | }</pre> | ||
+ | ====程序效果==== | ||
+ | 分別滑動兩個滑條電阻器可以控制舵機0到180度旋轉(zhuǎn)。<br/> | ||
+ | 備注:這里使用的是金屬齒電機,但是由于 Arduino UNO IO 接口電流輸出能力低,所以驅(qū)動金屬齒舵機工作不能穩(wěn)定進行,需要單獨供電,我們使用了一個 7.4 V 鋰電池和降壓器給舵機進行了供電,保證工作的穩(wěn)定性,使用降壓器的原因是:舵機供電電壓范圍是不超過 7.2 V 的,電壓過大會導(dǎo)致舵機損壞。 | ||
==演示視頻== | ==演示視頻== |
2016年1月22日 (五) 11:05的最后版本
目錄 |
產(chǎn)品概述
此產(chǎn)品是Arduino傳感器擴展板V5.0的升級版本,保留了原有功能基礎(chǔ)上新增了Xbee接口,省去了需要購買Xbee承載板的成本,此款擴展板還增加了5V和3.3V電源的切換功能,只需要簡單的更改跳線帽的位置,而且也包括了3.3V單獨引出的擴展端子,非常使用。新升級后板載的貼片開關(guān)解決了外接串口模塊不能直接下載程序的問題,操作簡單易用,升級后板載的數(shù)字接口可以由外部直接提供9V —12V的電壓源進行供電,為舵機驅(qū)動提供了便利,此款產(chǎn)品依舊繼承了之前版本表面的沉浸工藝,標(biāo)識清晰,美觀大方。
規(guī)格參數(shù)
- 尺寸大?。?5mm * 55mm
- 重量大?。?3g
- 模塊接口:APC220/藍牙/SD卡/Xbee模塊/SPI接口/LCD Serial/IIC
- 電源接口:5V/3.3V/9V - 12V
- 功能開關(guān):程序下載、執(zhí)行切換開關(guān)/電源隔離二極管/3.3V & 5V切換端子
- 指示燈:板載電源PWR指示LED/板載數(shù)字D13接口LED/Xbee指示LED
- 其他:復(fù)位按鍵
- 數(shù)字接口:D0 - D13
- 模擬接口:A0 - A5
- 特點:舵機單獨供電接口、固定3.3V電源輸出擴展
接口介紹
引腳定義
- S:信號引腳
- G/-:電源地
- V/+:電源正極
- 3V3:3.3V 電壓輸出
- 5V:5V 電壓輸出
- SDA:IIC 數(shù)據(jù)端口
- SCL:IIC 時鐘端口
- MOSI:SPI 主設(shè)備數(shù)據(jù)輸出,從設(shè)備數(shù)據(jù)輸入
- SS:從設(shè)備片選端口
- MISO:SPI 主設(shè)備數(shù)據(jù)輸入,從設(shè)備數(shù)據(jù)輸出
- SCK:時鐘信號,由主設(shè)備產(chǎn)生
接口功能說明
1.舵機供電接口:當(dāng)UNO控制器接有舵機的情況下,舵機需要進行單獨供電,這個接口就是給舵機單獨供電使用的。
2.D13 引腳LED:綠色LED,用來反映UNO控制器的D13引腳狀態(tài),D13引腳高電平時LED點亮,D13引腳低電平時LED熄滅。
3.APC220接口:APC220 無線通信模塊接口.
4.數(shù)字接口D0到D13:將Arduino UNO控制器的數(shù)字引腳擴展成3線制接口說明:數(shù)字接口旁有“D”字樣:代表的是數(shù)字信號(Digital Signal)。也就是對應(yīng)連接到控制板的數(shù)字引腳。
(1)黑色:地(GND)
(2)紅色:電源
(3)黃色:數(shù)字引腳信號端(D0 - D13)
5.Xbee擴展板接口:直接可以連接Xbee模塊,實現(xiàn)數(shù)據(jù)的傳輸。
6.模擬接口A0到A5:將Arduino UNO控制器的模擬引腳擴展成3線制接口。
說明:模擬接口旁有“A”字樣:代表的是模擬信號(Analog Signal)。也就是對應(yīng)連接到控制板的模擬引腳。
(1)黑色:地(GND)
(2)紅色:電源
(3)黃色:模擬引腳信號端(A0 - A5)
7.IIC通信接口:分別為+、-、SDA、SCL
(1)+ 接控制器電源正
(2)- 接控制器電源負
(3)SDA 接控制器 A4 引腳
(4)SCL 接控制器 A5 引腳
8.供電選擇:通過跳線帽的插接可以選擇5V或3.3V供電。便于給需要3.3V電源的傳感器進行供電,如果沒有該跳線帽,VCC引腳輸出電壓為0。
9.SD卡模塊接口:分別為:+、-、MOSI、SS、SCK、MISO
(1)+ 接控制器電源正
(2)- 接控制器電源負
(3)MOSI 接控制器 D11 引腳
(4)SS 接控制器 D4 引腳
(5)SCK 接控制器 D13 引腳
(6)MISO 接控制器 D12 引腳
10.電源輸入:接7到12V的供電電源,紅色端子和排針引腳的功能是相同的,為了方便大家不同接口的電池使用。
11.藍牙模塊接口:與藍牙串口模塊可以直接插接在一起,不需要引線連接,分別為:VCC、GND、D1、D0、GND、3.3V。
12.3.3V輸出:提供兩個恒定3.3V電壓輸出引腳,這個電源輸出與其他的VCC引腳輸出電壓有所不同,其他引腳的VCC是與電源跳線帽的選擇有關(guān),而這里則不是,而是恒定的3.3V電壓輸出。
13.復(fù)位按鍵:按下案件可以實現(xiàn)UNO控制器的程序復(fù)位
14.編程開關(guān):分為運行模式(RUN)和下載(PROG)模式,用過Arduino板的用戶可能都知道,Arduino只有一個串口,如果Arduino板上接有占用串口的模塊時,要上傳程序需要將模塊拔掉才能正常,但是這款擴展板可以幫您解決問題,方法就是:將開關(guān)撥到PROG,就可以實現(xiàn)不拔掉占用串口的模塊同時進行程序上傳
15.LCD 串行接口
(1)VCC 接控制器電源正
(2)GND 接控制器電源負(GND)
(3)MOSI 懸空
(4)MISO 接控制器 D4 引腳
(5)SCK 接控制器 D3 引腳
(6)RST 接控制器 D2 引腳
16.供電指示LED:供電電源燈,紅色,在擴展板正常供電狀態(tài)下點亮
使用方法
數(shù)字端口
使用硬件
- Carduino UNO 控制器 * 1個
- Arduino XBee Sensor Shield * 1個
- LED發(fā)光模塊 食人魚燈 紅光高亮 * 1個
- 3P 傳感器連接線 * 1個
硬件連接
例子程序
/* LED 接 D4 引腳*/ void setup() { // initialize digital pin 13 as an output. pinMode(4, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(4, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(4, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
程序效果
LED 燈1秒鐘頻閃
模擬端口
使用硬件
- Carduino UNO 控制器 * 1個
- Arduino XBee Sensor Shield * 1個
- 旋轉(zhuǎn)角度電位計 * 1個
- 3P 傳感器連接線 * 1個
硬件連接
例子程序
/* 旋轉(zhuǎn)角度電位計模塊接A0引腳*/ void setup() { Serial.begin(9600); } void loop() { Serial.println(analogRead(A0)); delay(100); }
程序效果
通過串口監(jiān)視器可以觀察旋轉(zhuǎn)角度電位計在轉(zhuǎn)動過程中模擬量的變化
藍牙端口
使用硬件
- 藍牙模塊 * 2個(1個主機,一個從機)
- Carduino UNO 控制器 * 2個
- Arduino XBee Sensor Shield * 2個
- USB接口連接線 * 2個
硬件連接
測試程序
主機測試程序
void setup() { Serial.begin(115200); //設(shè)定波特率為 115200 } void loop() { Serial.println("www.robotbase.cn"); //串口輸出 www.robotbase.cn delay(1000); //延時 1 秒 }
從機測試程序
char val; //定義字符變量 val int ledpin=13; //定義 ledpin 引腳為 13 void setup() { Serial.begin(115200); //設(shè)定波特率為 115200 pinMode(ledpin,OUTPUT); //設(shè)定 ledpin 引腳為輸出狀態(tài) } void loop() { v al=Serial.read(); //讀串口接收到的數(shù)據(jù) if(val!=-1) { digitalWrite(ledpin,HIGH); //ledpin 引腳寫入高電平 delay(500); //延時 0.5 秒 digitalWrite(ledpin,LOW); //ledpin 引腳寫入低電平 delay(500); //延時 0.5 秒 Serial.print(val); //串口打印 val 的值 } }
程序效果
- 使用串口助手觀察結(jié)果,串口助手設(shè)置串口號為從機的串口號,波特率和程序設(shè)置的一致為 115200,其它默認即可,打開串口就可以看見結(jié)果。同時從機的數(shù)字口 13的 LED 燈會閃爍。
SPI端口
使用硬件
- 12864 液晶擴展板 * 1個
- Carduino UNO 控制器 * 1個
- Arduino XBee Sensor Shield * 1個
- USB接口連接線 * 1個
測試程序
#include "LCD12864RSPI.h" #define AR_SIZE( a ) sizeof( a ) / sizeof( a[0] ) unsigned char show0[]={ 0xB9, 0xFE, 0xB6, 0xFB,0xB1, 0xF5, 0xB0, 0xC2, 0xCB, 0xC9, 0xBB, 0xFA, 0xC6, 0xF7, 0xC8, 0xCB}; //哈爾濱奧松機器人 unsigned char show1[]="gharee.com"; void setup() { LCDA.Initialise(); // 屏幕初始化 delay(100); } void loop() { LCDA.CLEAR();//清屏 delay(100); LCDA.DisplayString(0,0,show0,AR_SIZE(show0));//第一行第三格開始,顯示文智位機器人 delay(100); LCDA.DisplayString(2,0,show1,AR_SIZE(show1));;//第三行第二格開始,顯示網(wǎng)址dfrobot.com/ delay(5000); }
程序效果
程序上傳后12864液晶文字顯示:“奧松機器人,gharee.com”
Xbee端口
使用硬件
- Xbee 1mW ZigBee 無線數(shù)傳模塊 * 2個
- Carduino UNO 控制器 * 2個
- Arduino XBee Sensor Shield * 2個
- USB接口連接線 * 2個
硬件接線
測試程序
int ledPin = 13; int val; void setup() { pinMode(ledPin, OUTPUT); Serial.begin(9600); } void loop() { Serial.print('A'); delay(1000); val = Serial.read(); if (-1 != val) { if ('A' == val) { digitalWrite(ledPin, HIGH); delay(500); digitalWrite(ledPin, LOW); delay(500); } } }
程序效果
兩個擴展板的板載LED均每隔1秒閃爍一次。
IIC 端口
使用硬件
- Carduino UNO 控制器 * 1個
- Arduino XBee Sensor Shield * 1個
- USB接口連接線 * 1個
- Arduino 條形LED模塊 * 1個
例子程序
#include <RobotBase_LED_Bar.h> RobotBase_LED_Bar bar(A5, A4, 0); void setup() { bar.begin(); } void loop() { for (int i = 0; i <= 10; i++) { bar.setLevel(i); delay(100); } }
程序效果
LED 條形模塊掃描顯示,每個LED連續(xù)顯示亮滅
舵機控制
使用硬件
- Carduino UNO 控制器 * 1個
- Arduino XBee Sensor Shield * 1個
- USB接口連接線 * 1個
- RB - 150MG 舵機 * 2個
- 滑條變阻器 * 2個
- USEC 3A 穩(wěn)壓器 * 1個
- 7.4V 1200mAh 鋰電池 * 1個
硬件連接
- 將舵機1連接在控制器數(shù)字5引腳;
- 將舵機2連接在控制器數(shù)字6引腳;
- 滑條變阻器1連接在控制器模擬3引腳;
- 滑條變阻器2連接在控制器模擬4引腳;
- 7.4V 鋰電池連接一個 UBEC 3A 穩(wěn)壓器給舵機進行供電;
實驗代碼
通過兩個滑條變阻器來控制二自由度舵機云臺的旋轉(zhuǎn)
#include <Servo.h> Servo servo1; Servo servo2; int pot1, pot2; void setup() { servo1.attach(5); servo2.attach(6); servo1.write(90); servo2.write(90); } void loop() { pot1 = analogRead(A3); pot2 = analogRead(A4); pot1 = map(pot1,0,1023,0,180); pot2 = map(pot2,0,1023,0,180); servo1.write(pot1); servo2.write(pot2); delay(15); }
程序效果
分別滑動兩個滑條電阻器可以控制舵機0到180度旋轉(zhuǎn)。
備注:這里使用的是金屬齒電機,但是由于 Arduino UNO IO 接口電流輸出能力低,所以驅(qū)動金屬齒舵機工作不能穩(wěn)定進行,需要單獨供電,我們使用了一個 7.4 V 鋰電池和降壓器給舵機進行了供電,保證工作的穩(wěn)定性,使用降壓器的原因是:舵機供電電壓范圍是不超過 7.2 V 的,電壓過大會導(dǎo)致舵機損壞。
演示視頻
產(chǎn)品相關(guān)推薦
產(chǎn)品購買地址
周邊產(chǎn)品推薦
傳感器擴展板V5.0
12864液晶擴展板
XBee 1mW ZigBee 無線數(shù)傳模塊
相關(guān)問題解答
Arduino XBee Sensor Shield 擴展板接口說明