Category Archives: Arduino嵌入式開發板

Arduino Cloud 環境介紹

Arduino.cc 去年發表了 MKR1000 這片 IoT 開發板之後,於近日發表了在 IDE 上的重大進展,就是 Arduino Cloud,雖然很多東西都還在 beta 就是了…  其實CAVEDU 在兩年前就已經使用 Arduino Yun 搭配 Temboo 來結合各種雲服務,例如 Gmail、Google 試算表、Facebook 與 Dropbox 等等,直到今天聽到 Arduino 終於有自己的 Cloud 也是夠令人興奮的了。

另一方面,MIT App Inventor 也選用 Arduino 101 作為物聯網套件的核心開發板,您在不同的面向上都有相當好的方案可以選擇。您可以直接從 Arduino project hub 看看目前有哪些有趣的專案

說真的,從 Arduino Yun 之後,經過 LinkIt Smart 7688 到這篇的 MKR1000 (點進去自己看規格吧),各位是否發現這個現象了呢?

延伸閱讀:[Make雜誌] Arduino發表MKR1000、物聯網程式開發環境和社群專題平臺

板子的規格愈來愈不是討論的重點,反正它們一定是愈來愈快,愈來愈好

雲端/後端的完整性才能帶起更多應用

 

Continue reading

[授權翻譯] NXT/EV3 Arduino I2C 終極指南 – 感謝Muhannad Al-Khodari

NXT/EV3 Arduino I2C 終極指南

註:本文經原作者 Muhannad Al-Khodari 同意 CAVEDU 翻譯成正體中文後用於教學推廣,歡迎註明出處後轉載。感謝CAVEDU實習生與台大自造者社長張德芯同學協助翻譯

本文將介紹如何連接LEGO EV3或NXT系列與Arduino UNO。過去幾年,筆者都是使用LEGO Mindstorms提供的圖形化程式與RobotC來控制NXT 和 EV3,但總覺得有些馬達、感應器會受到積木本身的限制,或是希望能擴充一些積木不支援的功能。本文將會告訴您如何按部就班地掌握解決上述問題。未來會再增加 LabVIEW 的做法。

在繼續深入前,請注意這不是”五分鐘掌握NXT/EV3與Arduino的I2C”,您需要投入一些時間,大約2~3天閱讀、消化並測試,之後才能應用到自己的專案上。當然也與耐心和投入的時間有關。

Continue reading

[穿戴式裝置製作] 導電縫線

哈囉!各位好~這次要與大家介紹的有趣物件是導電縫線!
說到電路,不知道諸位對於電路有著什麼樣的想像? 由於C小編曾經在服裝設計系待過兩年,所以對於能夠穿戴的電子裝置特別感興趣~
究竟這塊擁有鮮豔紫色的開發版到底有什麼特別的呢,且讓我們來認識一下 😀

Lilypad Arduino可穿戴的電子紡織科技是由曾是MIT Media Lab Leah Buechley 教授與SparkFun團隊所開發設計的。
◊註:Leah Buechley是一個設計師、工程師也是個教育家,致力研究於介於電子織品與紙上電路。

Lilypad Arduino的特點在於:

  • 可水洗
  • 有多種輸出、輸入、電源
  • 板子上設計有很大的連接點可以縫在衣服上(讓針線可以穿過去更加易於用在穿戴式的專案噢)

材料如下圖:
工具介紹

  • 鱷魚夾->在縫線之前,用來測試電路
  • lilypad 水銀電池供應盒->無開關裝置
  • 水銀電池->國際通用規格CR2032
  • lilypad LED->這次用的是紅色與白色,還有很多顏色呦
  • 導電縫線->規格為兩股
  • 手縫針->建議針孔要選大一點
  • 導電縫線:這次使用的是兩股,市面上還有三股等不同規格,有興趣的朋友可以上sparkfun來查詢詳細資料

https://www.sparkfun.com/products/retired/10118

導電縫線

  • Lilypad水銀電池盒,有兩種不同歸格,另外一種電池盒有附開關。至於水銀電池是國際通用規格,在各大雜貨鋪都可以買得到囉 https://www.sparkfun.com/products/10730

材料-電池盒

  • ~lilypad LED本次選用的是單色led,如果想要調控RGB色彩的話,也有 lilypad pixel 可以選用喔

本次用的led

本篇重點在於導電縫線的介紹,於是選擇了最簡單的測試方法。連接方式很簡單,就是將電池盒的正負極與LED的正負極相連,再放入鋰電池,就能通電! 

先用鱷魚夾測試說明

IMG_3513

由於導電縫線明顯比一般手縫線粗上很多,線頭很亂,所以建議手縫針可以選擇大一點的穿孔,
才會比較方便操作呦。

先穿線 有很多岔口不好穿

開始縫製啦!

導電縫線穿好線

先從led的負極開始縫製電路,就這樣一路縫成一條

開始

再接上電池盒的負極,創造一條完整的電路。縫完一邊之後,為了必免錯誤,可以不時用鱷魚夾測試看看噢~

導電縫線雖然是軟電路,適合用於穿戴,但相對的穩定性不如硬式電路來得高,所以在製作的時候,不要怕麻煩,耐心的用鱷魚夾與電錶量一量每條縫好的電路是否都暢通!不然浪費了不便宜的導電縫線實在是件很可惜的事情啊 QwQ

記得操作期間要量電錶

確認沒有問題之後,接這就是將另外一邊的電路也跟著縫上,形成一個完整的通電路線!

當C編在縫製的時候,覺得線很容易跟布料摩擦,Q起來,或是有扭曲的現象,

所以我會建議在選底布的時候,可以選結構比較強韌的材質進行操錯,比較不容易變形~
如果非得用比較軟或是滑溜綢緞的布料,可能就得在加燙個底襯來增加布的穩定度了!

接著換另外一邊

    如圖,左邊電路是單線,右邊是雙線。我個人覺得雙線真的比較保險,雖然使用單線的網路專題也不少,不過實際操作起來的時候單線不能乖乖服貼在布料表面之上,很容易勾到其他物件,甚至是毛掉、不小心拉扯到…

此外有個膚淺的理由就是雙線的曲度看起來真的比較美觀,能給專案加上很多分。沒錯,Lilypad系列就是個藝術品呀

單線與雙線縫差別

放入電池後,就可以點亮Led燈啦!

封面

由於一拿到縫線,我就手癢想要縫縫看,就隨手縫上自己的鉛筆袋了… 真希望在未來能夠好好的將縫線運用在ㄧ個完整的作品之上 🙄

另外另外~
C小編這裡po幾個相關網站,有興趣的朋友們都可點進去看看,更加的了解Lilypad!

  1. SparkFun Lilypad產品頁面:https://www.sparkfun.com/categories/135
    當然台灣很多拍賣網站也有零售各樣零件,就請各位自行挖寶了
  2. Lilypad官方教學網站:http://lilypadarduino.org/

裡面有些簡易專案,可以跟著操作看看

 

[開箱文] Arduino 101 / Genuino 101 – Arduino.cc 與 Intel 合作,板載藍牙 BLE 與六軸加速度計/陀螺儀

Arduino.cc 與 Intel 合作的開發板:Arduino 101 (美國) / Genuino (美國以外),板載藍牙 BLE 與六軸加速度計/陀螺儀,今天終於拿到了。我們已經開賣 ($1575),歡迎訂購喔

101 的板型與 Uno 是完全一樣的,差別在於 Uno 的 ATmega328 晶片換成了Intel® Curie™ ,也就是說 101 有兩個核心:x86 (Quark) 與 ARC (Argonaut RISC Core)。讓 101 的效能更好、功耗也更低 (3.3V),另一個就是 Curie 晶片上的 Bluetooth Low Energy 與六軸加速度計/陀螺儀。

延伸閱讀:[Make雜誌國際中文版]Arduino 101:具感測器套件且處理器為 Intel Curie的30美元控制板

接頭還是和 Uno 一樣,有種懷舊的感覺

2016-01-26 14.50.47

2016-01-26-14.51.00-1024x768

Continue reading

86DUINO 3D印表機 Enjoy 印匠 開箱

今天突然在桌上發現了一箱神秘的箱子,除了此面朝上的易碎貼紙外,什麼都沒有
到底是什麼東西呢?

IMG_0693

原來是台灣廠商瞻營全電子所出產的3D印表機 「Enjoy 印匠」

IMG_0694

看得出來機器其實不是很大台,但是包裝材讓整個紙箱變得很大,避免運送途中的碰撞使機器受到損壞。

IMG_0695褪下了包裝材與塑膠袋,裡面就是機器本體,機身造型很簡潔俐落。

IMG_0696所有可動結構在出廠時都被細心的固定住。

IMG_0697Z軸移動平台被降至最低的位置,並墊上兩塊泡綿作為緩衝,有標籤提醒你開機前要拆掉。

IMG_0698噴頭也被束帶固定在角落,同樣有標籤提醒你開機前要拆掉。

IMG_0699

背後有開關、電源孔、Micro USB連接埠、隨身碟與SD卡插孔以及網路連接埠,而下方的紅色按鈕則是「一鍵退料」的功能鈕。

IMG_0700

正面的IO更是簡單
「印匠」沒有任何的顯示螢幕,只有5個LED指示燈:
電源、運作燈以及X、Y、Z軸的極限開關指示燈。

IMG_0701

除了機器,隨機的配件還有:
玻纖板一片
紙膠帶四張(兩張一組)
變壓器
電源線固定夾
USB傳輸線
長尾夾四只(固定玻纖板用)
原廠PLA線卷(250g)
與該機測試圖一張

IMG_0702

還附上一隻列印的小公仔與長方柱,這兩個列印件就是由你面前的機器所印製出來的。
每台機器出廠前都會先經過10個小時的列印測試,確認機器列印狀況與品質優良才會放行出貨。

IMG_0703這張看起來像雷達圖的是該機測試圖
如果細看會發現它其實是用原子筆所繪製的,這也是原廠出廠前的必要測試,如果平台不平,那這張圖就無法完整繪製。

IMG_0704 IMG_0705

變壓器的規格是24V 2A

IMG_0706
測試圖也讓你可以在玻纖板上貼紙膠時,能更精準地對到位置。

86Duino Enjoy 印匠
從第一台原型機出來到真正開始鋪貨,中間經過了好多次的延宕,
但也讓我們看到廠商為了追求更好的品質,而投入了更多的物力、人力,
從包裝到配件盒中所附上的測試件與測試圖,真的看見了廠商的用心。

 

86Duino Enjoy 印匠 測試篇 Coming soon…..

Vernier三軸加速度感應器控制RGB LED

今天要來和大家分享一個Vernier公司的三軸加速度感應器(3-Axis Accelerometer),可以透過轉接頭連接麵包版,以Arduino UNO控制。Vernier是一家美國的科學儀器公司,提供了各式平台、感應器與軟體。Vernier公司將感應器分成類比BTA與數位BTD兩種,這一顆三軸加速度感應器屬於類比式(BTA)的感應器。

12054

感應器需要先接上轉接頭,再與麵包板連接(也可以選擇用Vernier推出的arduino相容擴充板),轉接頭亦分為類比與數位兩種。

12050

12051

Analog Protoboard Adapter(BTA-ELV)

轉接頭上共有SIG2.GND.VRES.ID.5V.SIG1六個腳位,在接下來的範例中,我們只會使用到其中的三個,分別是5V.GND.SIG1

12053

以三軸加速度感測器控制RGB LED燈

這是一個簡單但是非常有趣的專題,運用Vernier的三軸加速度感測器,透過三個BTA轉接頭,持續的監控由感測器所回傳的的電壓值,並將這些讀值轉為LED的紅色、綠色、藍色的亮度值。

所需材料:

Vernier 3D BTA三軸加速度感測器 一個

Vernier BTA-ELV轉接頭 三個

Arduino UNO或相容板 一個

400孔麵包板 一個

5mm RGB LED (共陰極)一個

¼ W 220歐姆電阻 一個

跳線或是杜邦線 一批

電源(7-12V也可以透過USB埠供電)

 

軟體:

Arduino IDE

可於https://www.arduino.cc/en/Main/Softwarey9 下載,截稿時的最新版本為1.6.6。各大作業均可安裝Windows、OS X、Linux。

 

工具:

已安裝好Arduino IDE與驅動程式的電腦

USB線(需配合使用的Arduino板)

撥線鉗(使用單芯線時才會用到,使用杜邦線就不用)

 

說明:

透過讀取感測器原始電壓值(0~1023)後,轉換成PWM參數(0~255)( 除以4),再分別以三個PWM腳位(代表RGB三種顏色)輸出x. y. z三軸的電壓值。程式碼可以在Vernier官方網站以及官方Github找到。

http://www.vernier.com/engineering/arduino/projects/control-led-with-accelerometer/

https://github.com/VernierSoftwareTechnology/arduino/blob/master/Vernier3DAAutoscale/Vernier3DAAutoscale.ino

Vernier官方也提供了其他arduino的範例,程式碼也都在Vernier官方的Github,也可以利用加速度規讀取未校正的原始數值,或是以規格說明書上提供的數值進行校正。

 

 

 

參考資料:

http://www.vernier.com/engineering/arduino/connect/breadboard/

圖片來源:

http://www.vernier.com/products/sensors/accelerometers/3d-bta/

http://www.vernier.com/products/interfaces/bt-ard/

http://www.vernier.com/products/accessories/protoboard-adapters/bta-elv/

 

Arduino Serial Plotter 玩玩看~ 一元二次函式圖形

Arduino 1.6.6 的新功能就是 Serial plotter,可以把數值直接顯示成圖表了,QQ。這個功能讓好多玩家望穿秋水啊,不然要做資料視覺化只能使外部程式例如 Processing  或 python 進行後續處理。

今天就來玩玩看吧,以下是使用 Serial plotter 繪製一元二次函式圖形的結果,很棒吧

001

可看到語法一樣是 Serial.println(),只是要用Serial plotter 才能看到畫面。

實際測試的狀況下如果同時用 Serial.print 顯示字串的話,Serial plotter 會沒有畫面,另一方面,Serial monitor 與 Serial plotter 無法同時開啟,請注意喔

002

// please open serial potter to see the sine wave~
#include "math.h"

void setup() {
  Serial.begin(9600);
}

void loop() {
  for (double i = -10.0; i <= 10.0 ; i += 0.1) {
    Serial.println(pow(i, 2) + 2 * i + 1);
    delay(10);
  }
}
Arduino serial plotter example

延伸閱讀:Arduino 軟體更新,命令列工具與序列資料繪圖器新登

[套件包介紹] Grove Indoor Environment Kit for Edison 用於 Intel Edison 的室內環境感測套件

Seeed Studio 這家公司應該不用多作介紹,這家位於深圳的公司專門生產各式各樣的轉接板與周邊硬體。本文要介紹的是 用於 Intel Edison 的室內環境感測討套件

本套件可幫助您探索並與室內環境暨行各種互動。套件內的各種感測器可搭配 Intel edison 開發板來快速製作各種專案原型來拓展您的想像力。

Grove Indoor Environment Kit for Intel® Edison 搭配 Intel Edison 與 Arduino Breakout Board 讓製作室內環境偵測應用變得簡單多了。使用 Base shield 轉接板 V2,開發者最多可同時使用 11 種不同的 Grove 感測器與致動器。請參考上述連結看更多相關教學喔。

未命名

裡面有什麼呢?

  • Base Shield 轉接板 V2 x 1
  • Grove – LCD RGB 背光螢幕模組 x 1
  • Grove – 溫溼度感測器 x 1
  • Grove – 繼電器 x 1
  • Grove – 濕度感測器 x 1
  • Grove – 伺服機 x 1
  • Grove – 光感測器 x 1
  • Grove – 蜂鳴器 x 1
  • Grove – UV 感測器 x 1
  • 9V / 筒狀電源接頭 x 1
  • Grove – PIR 動態感測器 x 1
  • 26AWG Grove 排線 x 2
  • Grove – 編碼器模組 x 1
  • USB 傳輸線 x 1
  • Grove 按鈕 x 1
  • 說明手冊 x 1

最後附上 Seeed 的介紹影片

[雙A計劃]自己的拳擊機器人自己改裝_使用Arduino;AppInventor by TKUEE-CILAB

robot13

今天小編要跟各位分享一個機器人改裝教學,它源自淡江大學電機系-CILAB實驗室的專題作品,

這項改裝作品在Tokyo Maker Fairer發表後,販賣這個機器人的公司也將這個發想概念運用在他們新的機器人產品上,

讓人覺得Maker與商品製造其實能很好的相輔相成。話不多說,我們來看看這個機器人影片吧。

看了這個影片,也想要自己動手改裝的話,請繼續往下看喔

  • 本項作品使用日本TOMY公司生產的“BATTROBORG 4G”拳擊機器人玩具,
  • 將原本的體感操控,改造成能利用Android裝置,透過藍芽來控制機器人的動作(體感下一篇敬請期待)。

一組機器人需要準備

  • Arduino開發版*1
  • 藍芽模組*1
  • 3號*4電池盒*1
  • 光耦合器元件PC817*2

電路測試

  • 請先按照附圖之電路圖在麵包板上佈置電路

在此我們利用LED來測試我們在光電耦合器的使用上是否正確

。若是配置正確,在我們用手機向藍芽裝置傳送資訊時,對應的LED就會閃碩。

robot01

Arduino程式編輯

在此我們監聽接上藍芽模組後的TxRx,當藍芽接收到傳送的字元‘0’或‘1’時,分別啟動連接於Pin 10&11的光電耦合器,藉此讓連接於耦合器另一端的LED的正負極導通。

int input = 0,left=10,right=11;

void setup(){

  pinMode(left,OUTPUT);  
  pinMode(right,OUTPUT);  

  Serial.begin(9600);

}

void loop(){

  while (Serial.available()>0){

    input= Serial.read();
    Serial.println(input);

    if(input=='0'){

      digitalWrite(left,HIGH);
      delay(100);
      digitalWrite(left,LOW);

    }else if(input=='1'){

      digitalWrite(right,HIGH);
      delay(100);
      digitalWrite(right,LOW);

    }

  }

}

AppInventor撰寫App

  • 1 介面初始化
    • 我們在APP介面(圖1a)上配屬了三個按鈕(上方的左拳&右拳與右下方的藍芽裝置斷線),與一個用來列出並選取可連線的藍芽裝置的ListPicker(左下藍芽裝置連線)。因為本APP需要與藍牙裝至連線,所以要將BluetoothClient元件加入至介面中。在程式初始化後,因為還沒連上任何藍芽裝置的關係,這時除了BTConnect外的其他按鈕將呈現灰色無法選取的狀態(圖1b)。

robot02

圖1a

robot03

圖1b

2 藍芽裝置連線

  • 在我們開啟藍芽裝置選單前,要先將可供連線的裝置清單輸入至選單中(圖2a)。選取裝置並確定連線成功後,將原本設為不可選取的左拳、右拳以及裝置斷線按鈕開啟(圖2b)。

robot04

圖2a

robot05

圖2b

3 藍芽功能實作

  • 當我們與裝置連線後,點擊左拳或右拳按鈕時,會透過藍芽對連線裝置送出字元的1與0資料(圖3a)。按下裝置斷線的按鈕時,則會與裝置斷開連結,並重新將需使用到藍芽功能的按鈕關閉(圖3b)。

robot06

圖3a

robot07

圖3b

實際測試

  • 將撰寫完成的APP燒錄至手機,當我們與Arduino上的藍芽模組連結,並按下左拳與右拳按鈕時,與之對應的LED就會閃碩,代表我們光電耦合器的使用與設置是正確的。

機器人手把

  • 手把與基板拆解
    • 本作品使用的拳擊機器人玩具為日本TOMY公司生產的“BATTROBORG 4G”,同樣方法適用於同公司前代產品“BATTROBORG 20“。

將手把拆開後,可以看到控制器是利用搖晃時,撞針撞擊簧片,簧片互相接觸後導致線路導通,觸發一個揮拳的訊號,因此我們才在此作品上使用光耦合器來當作觸發開關(圖4)。

robot08

圖4,橘線標記處為撞針與簧片

 

將基板拆下,如下圖(圖5),可以看到三個部分分別為基板供電、右拳揮拳以及左拳揮拳,這些就是等下要跳線到麵包板上使用的接點。(在這裡可以選擇將原廠焊好的線留著繼續使用,或者自行換上單芯線)

robot09

圖5,橘線標記處分別為 a.基板供電 b.右拳揮拳 c.左拳揮拳

成品測試

  • 按照下圖(圖6)指示將基板的左右揮拳腳位跳線至對應的光耦合器(因訊號觸發機制為腳位導通,故接線無正負之分),並將基板電源供電腳位分別接上+5V和接地,Arduino接電,及可讓基板與機器人連線,並讓手機透過藍芽操控拳擊機器人。

robot10

圖6

Maker Faire Tokyo展示的照片

robot11 robot12

使用86duino製作六足機器人_種子教師培訓

01

 

今天小編的腳步來到瞻營全電子公司,這裡正在舉辦教師研習營,配合這間公司出版的86duino製作小六足機器人。86duino相關資訊,下面是這次製作的小六足機器人Demo影片,86duino在軟體方面除了有相容於Arduino的開發環境,這次還釋放了設計機器人動作不可或缺的動作編輯,讓86duino在製作機器人方面便利許多。

本文下方有瞻營全所提供的製作講義。總共分成四個部分:3D列印與組裝、伺服機電路組裝、86ME機器人動作編輯器講解、Servo86函式庫程式教學

 

這次小編覺得最亮的亮點在於影片上的動作編輯器,資料除了支援這次的伺服機SG90,此外來有支援kondo等有名的伺服機資料,如果伺服機有提供回傳角度的資訊。在動作編輯器上的動作也可以自動轉換為86duino的程式碼,轉換程式碼的部分,也可以設定用自動、藍芽、鍵盤、PS2搖桿等模式,在測試機器人動作上方便許多。

 

想要自己製作六足機器人,可以下載

軟體設備

1、六組機器人3D圖檔—>的86duino的3D圖檔

2、86duino開發環境—>86duinoIDE開發環境

3、伺服機動作編輯器—>86ME動作編輯器

設備材料請準備

1. 86Duino Enjoy 3D印表機一台及列印耗材

2. 86小六足組裝零配件 (例如: 螺絲)

3. 組裝工具 (例如: 攻牙刀, 銼刀, 螺絲起子)

4. SG90 伺服機 12 顆_參考連結
5. 7.4V 鋰電池 1 顆 (容量 850mAH 或更高)_參考連結

6. 86Duino Zero 或 86Duino One 一片_參考連結

 

這是六足機器人單腳

20150906_132713

 

六足機器人的背面,可以將十二顆伺服機的線整線至背後。

20150906_190253

 

這是瞻營全實習生,模仿LOL的史家納做出的六足機器人

 

後面還有詳細的86duino_Servo函式庫解說與Demo,聽說還會再開教師研習營,敬請期待!!

20150906_172340

 

最後小編的小組,與郭皇甫、施力維、緣佑緣一起合力完成的六足機器人,回家再來慢慢地整線

20150906_214239

 

3D列印與組裝


 

電路配置


 

動作編輯器


 

六足機器人運動


Arduino使用grove套件做小音樂盒

本文分享使用Arduino感測器套組Arduino groove kit心得

初學Arduino有bug時,常常不知道是電路沒接好還是程式寫錯了,debug看線路就會看到眼花撩亂。grove出的這塊base shield讓接電線變得容易許多。這塊板子將腳位都拉出來整理好,只要搭配他的相容套件,就不需要再因為看麵包版上的接線看到頭昏眼花了。

撰文:CAVEDU 陳韋綸

 

 

base shield

 

Base shield將arduino上的5V、ground、digital腳位、跟I2C等都整理出來,直接插上去就可以使用了,D2到D8分別對應到Arduino板上的2號到8號。

一般Adruino接線 使用base shield

一般的arduino接線                                                                                                     使用base shield

 

在智慧型手機這麼發達的今天,很多東西都可以用觸控的方式去控制了,今天就來用grove base shield跟grove touch sensor做觸控的小音樂盒吧!

 

準備材料

  1. Arduino控制板
  2. Grove base shield
  3. Grove touch sensor
  4. 蜂鳴器

grove touch

 

1、grove出的 touch sensor,使用電容式感測,只要碰到或在附近他就會輸出ON的訊號。

組裝示意圖

 

開始動手作

先裝上grove 的 base shield 擴充版將觸控感應器連到D8、蜂鳴器連到D6

 

組裝時接線都有防呆,所以不用擔心接錯方向

 

2、將下面的程式燒進去arduino就可以用囉

const int alarmpin = 6; //set the buzzer to D6
const int touchsensorpin = 8; // set the touch sensor to D8

void setup() {

  pinMode(touchsensorpin,INPUT); 
}

void loop() {

  int sensorvalue = digitalRead(touchsensorpin); //read touch sensor value
  
  //make sound if touched
  if(sensorvalue == 1){
    tone(6,440,200);
  }    
  
  delay(200);
}
Grove+Touch+Buzzer

程式說明

  • 第一二行設定蜂鳴器跟觸控感應器的腳位,注意蜂鳴器的腳位一定要在有PWM輸出的腳位
  • 第六行將觸控感應器設定為讀取信號
  • 第十一行讀取觸控感應器的狀態,若是有碰到會讀到1(TRUE),沒碰到會讀到0(FALSE)
  • 第十三行做判斷,有碰到就發出聲響
  • 第十四行讓蜂鳴器產生聲響的程式碼 tone( 腳位 , 頻率 , 時間 )

 

只要碰到就會發出聲音

很簡單吧!接下來只要再多準備幾個觸控感應器跟開關,就可以做自己的小音樂盒囉!

 

Grove最大的好處是他除了擴充版以外,還有很多像這次用的觸控感應器這樣的套件,只要把現插上去就可以直接使用了,有興趣都可以到他們的網站找找有沒有需要的套件吧!

http://www.seeedstudio.com/wiki/Grove_System

 

 

 

在 Scratch 單機版中控制 86Duino 開發板

本文將介紹如何在 單機版Scratch 1.6 及網頁版ScratchX中來控制 86Duino Educake (其他 86Duino 系列開發板也可以用)。

撰文:CAVEDU 邱子瑞

先討論單機版Scratch 1.6

1. 首先得先建置 86Duino 的環境。請開啟 http://www.86duino.com/?page_id=8918&lang=TW,依照電腦版作業系統選擇建置環境。

01
2. 下載軟體解完壓縮打開的畫面應該長這樣,這時候將 86Duino Educake 接上電腦卻會發現驅動程式安裝失敗。

02

3. 為解決這個問題,請上網搜尋 ”86Duino Educake 驅動程式”,按下第一個搜尋結果,也就是http://www.86duino.com/?p=4220&lang=TW。網頁出來後往下拉,會看到以下的畫面,遵循電腦作業系統版本進行步驟,在下方有教學文的連結。

03

 

04
4. 搞定 86Duino Educake 的驅動程式之後,接下來輪到 Scratch 的環境建置了。請按此連結 http://s4a.cat/,點選 Downloads 來下載單機版的 S4A。

05
您會看到這個畫面,這次使用的是 86Duino Educake,所以文中的 Arduino皆換成 86Duino Educake 來使用,下圖的紅框是安裝的順序,請根據您所用的作業系統來下載安裝檔。

06
單機版的 S4A 1.6 安裝好後打開來是這個畫面,螢幕右上角會有一塊 Arduino,並顯示 Searching board…,代表正在搜尋是否有連接開發板。

07
5. 要使 Scratch 能順利找到這次使用的 86Duino Educake,在剛剛的 S4A.cat 網頁下方,點選 here

08
就會跑出這個畫面,按全選後複製。這是等等要燒錄到 86Duino 的 sketch,它可以回應所有來自 Scratch 的呼叫。其實 LabVIEW 或是 Processing 要控制 Arduino 也是類似的概念。

09

打開 86Duino IDE 開發環境,選擇板子 (86Duino Educake)後,將剛剛的程式貼上,按上傳。

10

11

上傳成功後,Scratch 就可以抓到板子了!畫面右上角的面板數據會開始跳動,這樣所有環境就都建置完成,可以開始做專題囉。

12

再來討論ScratchX

86Duino的環境照著上方操作一遍即可,至於ScratchX的環境建置可以參考本站文章”Scratch X for arduino”。

接著講述86duino Educake在與ScratchX建立連線時與arduino不太一樣的地方。

1.首先,點選網址https://github.com/firmata/arduino/releases/tag/v2.4.3,並下載紅框中的檔案後解壓縮。

1

 

2.將剛剛解壓縮出來Firmata取代原有的Firmata,打開86Duino的資料夾,依循hardware > Arduino > avr > libraries開啟後,直接將下載的檔案拖進去,並全部取代。

02

03

04

05

06

3.全部取代後,重新啟動86Duino IDE,並從範例中選擇StandardFirmata上傳至86duino Educake。

07

4.上傳成功後過幾秒鐘後,ScratchX網頁中的黃燈即會轉成綠燈,如此一來就可以開始用ScratchX + 86duino Educake 開始製作專題囉!

09

P.S. 如果無法燒錄成功,請重新啟動 86Duino IDE 再次上傳,再不行的話重新開機或是換一個 USB port試試看。


13

[雙A計劃] Part8:Android 手機對 Arduino 同時進行資料收發

雙A計畫第八篇來了!這次我們將告訴您如何在 Android 手機端與Arduino端藉由藍牙來互傳資料,本範例可同時控制 Arduino D13 腳位的高低電位 (有個板載LED,也可以自己接一顆 LED),並在手機畫面上看到 D13 腳位的狀態(High / Low)代表資料收發都完成了。

另外,想了解雙A計畫所有內容的朋友,請參考下面的連結

[雙A計畫] 常見問題整理

       [雙A計畫] 藍芽模組(HC05/06)常用指令教學

[雙A計劃] Part0:App Inventor 透過藍牙傳送訊號給 Arduino

[雙A計劃] Part1:App Inventor 經由藍牙控制 Arduino LED 亮滅

[雙A計劃] Part2:App Inventor 經由藍牙控制 Arduino LED 漸明漸暗

[雙A計劃] Part3:Android 手機透過藍牙接收 Arduino 類比腳位狀態

[雙A計劃] Part4:App Inventor 藍牙遙控 Arduino 雙輪機器人

[雙A計劃] Part5:Paperduino 藍牙控制 LED 閃爍

[雙A計畫] Part6:Arduino 傳兩筆資料到 Android 手機

[雙A計劃] Part7:Arduino超音波感測距離回傳數值給Android手機

!!!注意!!!

如果Arduino端太頻繁去傳送LED燈的亮暗狀態給手機的話,可能會造成藍牙通訊塞車。以本範例來說,Arduino端是每100毫秒會傳送一次訊息,但是筆者有試過如果幾乎不等待,就讓Arduino端一直傳送的話,那麼在接收Android手機端的命令時就會出現0與1以外奇怪的數值喔!

程式下載請點我  (aia檔是App Inventor的專案檔,apk檔是手機端的安裝檔,直接丟到手機安裝就可以使用了, ino檔則是給Arduino執行的)


手機端程式說明,使用 App Inventor:

Designer 頁面

Screen Shot 2015-07-23 at 4.47.24 PM

請注意,本範例中的Clock1 元件的 TimeInterval 設定為10毫秒,也就是每10毫秒手機端就會去啟動藍牙接收程式,查看Arduino端的D13腳位的電位高低狀態。

這個參數您可以自由修改,如果想要做到最即時反應那就可以把時間間隔改低一點,但是在這邊提醒一下,藍牙的傳輸資料還是多多少少會有些時間延遲喔!

Blocks 頁面

Screen Shot 2015-07-23 at 4.33.18 PM

區塊元件名稱功能
藍牙列表的設定when ListPicker1.BeforePicking在藍牙連線到裝置前,先將之前配對好的藍芽裝置匯入到準備連接的列表中
藍牙連線到裝置when ListPicker1.AfterPicking選好要連接的藍牙裝置後,將藍牙列表關閉、啟動計時器開始每隔一段時間讀值,並把斷線的按鈕設定為可執行
斷線按鈕的設定when Button3.Click按下斷線後就會斷開藍牙通訊,並把按鈕配置回到一開始的狀態

按鈕發送藍牙訊號來控制 Arduino 以及定期接收 Arduino 的回傳值來改變按鈕 (Button2) 的背景顏色

Screen Shot 2015-07-23 at 4.33.55 PM

區塊元件名稱功能
藍牙遙控LED燈when Button1.Click當按下ON之後就會透過藍牙傳送”1″的訊息給Arduino,如果Arduino成功接收到的話,就會亮燈當按下OFF之後就會透過藍牙傳送”0″的訊息給Arduino,如果Arduino成功接收到的話,就會熄燈每次按下手機螢幕上的開關時,按鈕上的文字都會在”ON”、”OFF”之間做切換

 

藍牙接收LED燈狀態when Clock1.Timer每隔一段時間(本次範例使用的是10ms),就會去接收Arduino透過藍牙傳送過來的LED燈狀態如果是”1″的話,就將旁邊按鈕2的背景顏色設為亮色,代表此時燈是亮的如果是”0″的話,就將旁邊按鈕2的背景顏色設為暗色,代表此時燈是暗的

 

 

Arduino.org 的新開發環境 – Arduino Studio 0.0.1 alpha

Arduino.org 的新開發環境 – Arduino Studio (下載頁面請按我),名稱與 Android Studio 還真像…  如果用不習慣的朋友也可以下載 Arduino IDE 1.7.4 來用。雖然Arduino.cc 與 Arduino.org 正吵得不可開交啊,不過就使用者來說,如果有更好的開發環境也是好事一件。現在來看看安裝與環境介紹吧。

目前還是 alpha版(arduinostudio-0.0.1-win32),下載之後直接解壓縮點選 ArduinoStudio.exe 就可以開啟程式環境。色系還是熟悉的草綠色。左側工具列由上而下是[連線到 Arduino.org]、驗證、上傳。開新檔案、開啟舊檔、Console(程式碼)、Serial Monitor 與隱藏右側程式列。

001

從 File –> Open Samples 可以看到各個熟悉的程式碼

 

002

點選左側 Console 可以看到程式碼,下方可以看到目前設定的板子、port 與預設的程式語言風格

009

選擇程式語言風格

 

 

003

 

選擇板子

006

選擇 燒錄程式

007

點選左側 Serial Monitor 就可以看到整合在 IDE 中的 Serial Monitor了。驗證與上傳的方式則都一樣。

 

 

004

 

選擇系統語言

008

關於 Arduino Studio 視窗,可看到 Arduino Studio 是以 Adobe Brackets 所開發的

010


 

接下來是我們發現比較有趣的地方,就是要另外安裝 Atmel USB driver,目前安裝 driver 之後,Arduino UNO 燒錄正常,但是 Arduino Mega 2560 就抓不到。

 

 

 

005     011

011

012

安裝 Arduino srl 的 Arduino USB driver 與 linino 連線埠

 

013

014