2018年1月21日 星期日

【ArkLab飛行學院】 2018 新夥伴登場 --- 袖珍級可愛的「 口 袋 小 精 靈 」 無人機

超級可愛的新夥伴  
從今天起開始加入ArkLab大家庭囉!! 




--------------------- (奏樂~啪啪啪啪)-----------------------------------------------

巴掌大小的身體,螢光色的搭配,「療育」卻兼具「科技感」,
讓大夥第一次見到她便為她深深著迷了呢!




不過既然是口袋精靈,不外乎是她輕巧俐落的身材可細緻的收藏在飛行手把裡,放進口袋就可以帶著邊走邊玩,甚至想跟著小飛機一起旅行都這麼簡單喔!



---------------------   -----------------------------------------------

Arlab大部分小飛機依樣,口袋小精靈是採用美國手操作~
在第一次是飛就能感受起飛和移動真的 豪~ ~ 阿阿阿

其實口袋小精靈本身就有「定高功能」,操作起來不會手忙腳亂喔
對於小朋友或新手駕駛根本是超級福音阿阿阿!!



我們發現到手帶小精靈有個超級體貼的特色喔 軟腳ㄚ設計!!
讓大朋友小朋友,操作還不熟悉的朋友在飛機降落時可以穩穩挺挺的停在想停的位置喔!!




其實別看口袋精靈小小隻的,見識過她的遙控器就知道她可是功能強大的喔!
左右搖桿和電源不用說,居然還有一鍵返航、一鍵起飛、一鍵降落、無頭模式時中超強技能,只要學會一陽指,花式飛行就根本不是夢囉!



讓我們用簡單圖像記憶法把這些按鍵全都記熟在腦海吧!!

打檔 旋轉                               前調調 後調調
「 起飛 降落 」 「 回家 無頭 」 「 左調調 右調調 」


~ 白話文 ~
打檔 快慢自由換檔 / 電光一閃
旋轉 高速自旋 / 急速甩尾
起飛 一鍵起飛
降落 - 一鍵降落
回家 一鍵返航
無頭 不管旋轉交度,永遠固定投向



說真的,口袋小精靈還真是Arklab看過飛行時間超長的小飛機阿,
都玩到手痠了,她才稍稍看起來暈機需要充電了。

就 在 這 個 M o m e n t  !!


發現到她除了外接的充電器話,遙控器上居然也有充電線!!
無論在家在旅行在海底在山頂在煮飯再到垃圾!!!
!!!
      !!!


總而言之,言而總之,
「 口 袋 小 精 靈 」
孩子禮物、新手學習、給哥哥送妹妹約會告白結婚定情蜜月滿月,

送禮自用兩相宜,居家旅行 !!

推推!!






----------------------------------   ---------------------------------



[產品規格]
1.      遙控 – 15*7*2 cm3 / 150g
2.      飛機 展開直徑8cm / 收縮直徑 4*4cm/  21g

[產品附件]
1. 充電線*1
2. 保護框*4
3. 拔槳器*1
4. 備用槳*4
5. 說明書*1
6. 螺絲起子



2017年9月22日 星期五

【ArkLab飛行學院】遙控器開源程式碼--應用分享


        還記得8/26是什麼大日子嗎? 沒錯,arklab飛行學院正式公開了遙控器的開源程式碼!各位資深的飛客及黑客們,是不是已經開始想要大改特改了呢! 究竟有了新的遙控器我們可以怎麼玩呢? 今天分享幾種簡單的應用,想試試的玩家們不妨跟著我們一起來玩看看吧!

注意:有一點比較特別的是奶油蒼蠅2.0、3.0以及飛龍在天,雖然都可以使用新的遙控器操控,但是在飛龍在天上增加了許多不同功能的配件,所以建議沒有購買擴充元件的玩家可以先從飛龍在天的設定上玩起。



1.piano

                一般的鋼琴或者是或者是在手機平板上的虛擬電子琴並不少見,但是在開放遙 控器的原始碼之後,不知道有沒有想過如果飛龍在天可以像鋼琴一樣彈奏是一 件多酷的事情。在原始媽中基本的藍芽連線都已經完整的設置好了,剩下我們 需要做的就是來整合一下,手機遙控器上以及飛龍在天表現的部分,小編在這 裡先提個概要,詳細到底要如何做請容許小編在這裡賣個關子~





        要完成 DF 鋼琴的關鍵就在於蜂鳴器身上,蜂鳴器是透過電磁鐵的原理引動內部 的振動薄片來產生聲音,只要設定好 arduino 上的高低電位的啟動週期,以 Do 為例,將代表蜂鳴器的 D4 高低電位各輸出 1953 微秒,就可以發出 Do 的音調 喔~





2. LED controller

        不知道各位有沒有注意過飛龍在天在藍芽開關旁邊有兩個頭燈呢,其實他就連接在arknano的D2 pin 腳上喔,在我們客製化自己的遙控器的同時,怎麼可以不讓它們亮一下呢?想想在夜晚黯淡無光的時候跟親朋好友一起玩飛龍在天,這時候掏出你的自製遙控器把機頭燈打開,絕對是蝦趴又酷炫,立馬成為全場焦點啦!

        我們在設置好arduino上面的LED開關之後,就可以在android的程式裡面加上這段程式碼,讓操作者按下按鈕的同時打開LED頭燈





private void turnOnLed()

{

    if (btSocket!=null)

    {

        try

        {

            btSocket.getOutputStream().write("1".getBytes());

        }

        catch (IOException e)

        {

            msg("Error");

        }

    }

}


        當然開了燈自然就少不了關燈的步驟,關閉LED燈的方法也跟上面大同小異,只需要把輸出的1改為0就可以關燈了喔~




private void turnOffLed()

{

    if (btSocket!=null)

    {

        try

        {

            btSocket.getOutputStream().write("0".getBytes());

        }

        catch (IOException e)

        {

            msg("Error");

        }

    }

}





上圖為模擬LED Controller功能介面



3.Messenger

        你有想像過有一天能跟自己心愛的無人機進行互動嗎? 又或者是透過無人機跟 他人建立一道溝通的橋樑呢? Messenger 顧名思義就是『送信人』的意思,如果 在軍事上那就是一位『通訊兵』的角色,Messenger 就是透過我們自己設計的 遙控器送信給飛龍在天,就可以用打字的方式來要控我們的無人機做一些簡單 的操作,這次小編以訊息傳送 01 的方式開關機頭燈示意,各位高玩們想要用訊 息控制它們的升降也是完全沒問題~

  






4. Motor

        自製遙控器 APP 怎麼能少了最基本也最重要的馬達控制,在電路上從左前方的 槳開始順時針依序對應到的腳位是 3695,只要在對應的腳位上給予響應 的 PWM 訊號,就可以簡易的操控馬達了。在實際飛行前,也可以先用遙控器 測試馬達是不是可以正常運轉,就不用將馬達線拔除來測試囉~

首先將 arduino 部分設定完成

const byte MOTOR_PIN = 9; String inputString = "";
int strength; void setup() {
Serial.begin(115200); pinMode(MOTOR_PIN, OUTPUT);
digitalWrite(MOTOR_PIN, LOW); strength = 0;
Serial.println("set up done!");
}
void loop() { while(Serial.available() > 0){
int intChar = Serial.read(); if(isDigit(intChar)){
inputString += (char) intChar;
}
if(intChar == '\n'){
strength = inputString.toInt(); Serial.println(strength); inputString = "";
}
}
analogWrite(MOTOR_PIN, strength);

}


        再來完成 android 執行的部分,以操作上比較直覺的 Bar 來操作馬達 PWM 輸出 (如果要用別種方式也可以)

bar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { value.setText(seekBar.getProgress() + "/" + seekBar.getMax()); mConnectedThread.write(String.valueOf(seekBar.getProgress()  + "\n"));
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) { mConnectedThread.write(String.valueOf(seekBar.getProgress())  + "\n");
}
});
value.setText(bar.getProgress() + "/" + bar.getMax()); new ConnectBT().execute();
mHandler = new Handler(){
public void handleMessage(android.os.Message msg){ if(msg.what == MESSAGE_READ){
String readMessage = null; try {
readMessage = new String((byte[]) msg.obj, "UTF-8");
} catch (UnsupportedEncodingException e) { e.printStackTrace();
}
}
}
};


  



        以上就是四種比較直接的應用方式,試想有一天你控制無人機不再需要冷冰冰 的搖桿,而是只需要在手機平板上打幾個字或是對著手機說句話就能輕鬆的操 控它,這分分鐘閃瞎旁人雙眼的操作,想著想著心裡那叫一個美~ 或許,那個有一天並沒有想像中那麼遙遠,在 arklab 遙控器開源那個起,一切都只有想不到就沒有做不到的! 各位飛客如果有想到什麼新鮮的創意也歡迎在下方留言分享,或是把你們最後的 創意成果拍成影片分享給我們,讓我們一起激盪出更多靈感,並讓更多人成為飛客的一員。


2017年9月17日 星期日

『職人教學』飛龍在天 Sensor (聲音、servo、紅外線、雷射) 介紹 part2




              
        在上篇文章中我們介紹了包含超音波、光強度、溫室度等三種擴充感測元件,但咱們的飛龍在天可不只有這三種元件可以擴充,另外還有聲音感測、伺服馬達還有背後的紅外線及雷射,就讓小編繼續來為各位飛客一一介紹!


<聲音感測>



         聲音感測器就類似一個電子式的耳朵,使用高靈敏度的電容式麥克風收音,產生不同的電壓訊號,一般用來檢測周遭的聲音強度。


       而輸出有兩種,第一種是可以隨著麥克風的電壓訊號實時輸出類比數字大小的類比輸出,另一種是當電壓高於某個閥值時切換高低電位的數位訊號輸出,當偵測到有音源輸出低電位開啟led燈提示,沒有感測到音源則輸出高電位關閉電源。




Arduino程式碼:

#define led  A0
#define voice  A1
int v=0;
void setup(){
 Serial.begin(115200);
 pinMode(led,OUTPUT);
 pinMode(voice,INPUT);
}
void loop(){
digitalWrite(led,);
  v=analogRead(voice);
  Serial.println(v);
  if(v>=250){
  digitalWrite(led,LOW);
  delay(2000);
  }
}




Servo

              Servo中文叫做伺服馬達,做為一個常常使用於模型飛機的馬達所以也常被稱作RC伺服機(RC servo),伺服馬達裡是由直流馬達、齒輪箱、轉軸以及控制電路組成的模組,我們可以通過arduino輸入PWM訊號到Servo中來操控轉軸的角度。


                我們可以看到伺服馬達拉出棕紅橘三條杜邦線分別是代表接地(-)、電源(+)以及橘色的訊號線,在飛龍在天底部預留出伺服馬達的位置上,按照順序連接到GND1SA2(左翼)orA3(右翼)腳位上即可使用。

Arduino程式碼:

#include <Servo.h>

Servo myservo; 

int pos = 0;  

void setup()
{
  myservo.attach(A2);
}

void loop()
{
  for(pos = 0; pos <= 180; pos += 1)
  {                                 
    myservo.write(pos);            
    delay(15);                    
  }
  for(pos = 180; pos>=0; pos-=1)     
  {                               
    myservo.write(pos);              
    delay(15);                      
  }
}



<紅外線感測>


                 紅外線模組具有一對紅外線發射與接收管,發射管發射出一定頻率的紅外線,當檢測方向遇到障礙物(反射面)時,紅外線反射回來被接收管接收,經過比較器電路處理之後,綠色指示燈會亮起,同時信號輸出接口輸出數字信號(一個低電平信號)。紅外線模組對於環境光線適應能力很強,不需要擔心會因為環境光的強弱受到干涉,並且可使用螺絲起子旋轉藍色電位器旋節檢測距離,有效距離範圍230cm順時針旋轉感色距離加長反之則會縮短,實際測量距離與紅外線接觸到物體的大小、形狀有關係,測量黑色和較小物體時感測距離會比較近,而白色以及較大的物體可以感測的距離則會加長。


Arduino程式碼:
const int buttonPin = A2;   
const int ledPin =  2;    
int buttonState =0;   

void setup() {

  pinMode(ledPin, OUTPUT);
  pinMode(buttonPin, INPUT);
  digitalWrite(ledPin, HIGH);
  Serial.begin(115200);
}

void loop() {

  buttonState = digitalRead(buttonPin);
  Serial.print(buttonState);
  if (buttonState == HIGH) {
  digitalWrite(ledPin,HIGH);
  Serial.print("0");
  }
  else {
    digitalWrite(ledPin, LOW);  
    Serial.print("1");
  }
  Serial.print("\n");
  delay(100);
}




<雷射發射器>

               
                最後我們要來介紹的就是無人機感測擴充包裡的最後一件,紅光雷射激光模組,在學校教學或是簡報的時候常常會需要用到雷射筆來標示PPT或是簡報內容的人,對於雷射一定不會很陌生,沒錯!只要把這個紅外線模組擴充到飛龍在天上面,就可以讓它也擁有發射機光的能力囉~


Arduino程式碼:

void setup()
{
pinMode(A2,OUTPUT);    
}
void loop()
{
digitalWrite(A2,HIGH);     
delay(1000);                     
digitalWrite(A2,LOW);   
delay(1000);                    
}


       看完這麼多擴充元件的介紹,是不是也想要讓你的飛龍在天升級一下呢?如果對我們的產品有興趣的話,歡迎到Arklab的露天賣場參觀購買~~