• 検索結果がありません。

RaspberryPiでラジコン 最近の更新履歴 iyo's soft

N/A
N/A
Protected

Academic year: 2018

シェア "RaspberryPiでラジコン 最近の更新履歴 iyo's soft"

Copied!
26
0
0

読み込み中.... (全文を見る)

全文

(1)

               

第一弾

     

RaspberryPi

コン~

 

(2)

 

様 

車体 い  

部品表 

そ 備品 

ソ い  

回路設計 

GPIO端子 

 

基盤配線 

ソ 設計 

全体構成 

制御  

共通部  

関数 戻 値 

rc­control 

rc­control コ ン 様 

Unix ンソ   構成 

rc­drive 

rc­drive コ ン 様  構成 

構成 

コン  

GUI設計   

 

(3)

RaspberryPi 使 く 第一弾 Web 制御 コ

ン 作 Web 制御 コン

   

HTTP 用い 信 RaspberryPi用 ワ WebIOPi あ

兼 GUI Web ン HTTP+JavaScript+

PHP 制御 C言語 記述  

 

車体

● 4輪 コン 作  

● コン 車体 販売 い 適当

買う  

● 前輪 繋 右 車輪 回転数 変え 車体 回転 実現

 

● 車輪 回転数 PWM 制御  

● 回転 変え 使用  

● RaspberryPi 接続 配線

基盤 付 作成  

● 電源 乾電池 使う  

● RaspberryPi 電源 5V 1A 使う  

● RaspberryPi 通信 Wi­Fi経由 実施 RaspberryPi 無線LAN 内蔵

さ い い USB無線LAN子機 使う  

● USB無線LAN子機 RaspberryPi USB 接続 電力 足 使え

い ワ USB 経由  

● ワ USB へ 電源供給 使う  

● RaspberryPi ワ USB 2 必要

出力 あ 用意  

 

部品表

 

部品   品番  個数  価格  URL  備考 

RaspberryPi本

体    1       

SD     1      32GB 

Raspberry Pi

電源

JapaNice 

(4)

用 電 源 

12000mAh  2USB

時充電  

価 格  

E3%83%83%E3%83%86%E3%83 %AA%E3%83%BC­12000mAh­2U SB%E3%83%9D%E3%83%BC%E 3%83%88%E5%90%8C%E6%99% 82%E5%85%85%E9%9B%BB­iPho ne5S/dp/B00K9J3RE8/ref=sr_1_6? s=electronics&ie=UTF8&qid=14039 83840&sr=1­6&keywords=%E3%83 %A2%E3%83%90%E3%82%A4%E 3%83%AB%E3%83%90%E3%83% 83%E3%83%86%E3%83%AA%E3 %83%BC+12000mAh+2USB%E3% 83%9D%E3%83%BC%E3%83%88 %E5%90%8C%E6%99%82%E5%8 5%85%E9%9B%BB  Micro­USB(A­ MicroB)

  MPA­AMB015BK  458 

http://www.amazon.co.jp/gp/product /B003UIRIFO/ref=as_li_ss_tl?ie=UT F8&camp=247&creative=7399&cre ativeASIN=B003UIRIFO&linkCode= as2&tag=hiraminecom­22   

駆動 用電池

 

 電池 単

×

付   1  430 

http://www.amazon.co.jp/%E3%82 %AA%E3%83%BC%E3%83%A0% E9%9B%BB%E6%A9%9F­%E9%9 B%BB%E6%B1%A0%E3%82%B1 %E3%83%BC%E3%82%B9%E5% 8D%98%EF%BC%93%C3%97%E F%BC%94­%E3%82%B9%E3%82 %A4%E3%83%83%E3%83%81%E 3%83%BB%E3%82%AB%E3%83 %90%E3%83%BC%E4%BB%98/d p/B001TRVXKY   

無線LAN

   WLI­UC­GNM   1  767 

http://www.amazon.co.jp/BUFFALO ­%E7%84%A1%E7%B7%9ALAN% E5%AD%90%E6%A9%9F­%E3%8 2%B3%E3%83%B3%E3%83%91% E3%82%AF%E3%83%88%E3%83 %A2%E3%83%87%E3%83%AB­11 n%E6%8A%80%E8%A1%93%E3% 83%BB11g­WLI­UC­GNM/dp/B003 NSAMW2   

電源

USB    BSH4A01BK   1  1036   

(5)

%98­%E3%80%90PlayStation4­BS H4A01BK/dp/B001QS17WA  

USB→DC変換

 

ン 

USB→DC(外

3.5mm内

1.3mm)電源供

給  

1  405 

http://www.amazon.co.jp/gp/product /B0040PGNY8/ref=ox_sc_act_title_ 1?ie=UTF8&psc=1&smid=ALNZ5U

1OCLK   

 2枚

   70157  2   1296 

http://www.amazon.co.jp/gp/product /B001VZHRXG/ref=as_li_ss_tl?ie= UTF8&camp=247&creative=7399&c reativeASIN=B001VZHRXG&linkCo de=as2&tag=hiraminecom­22   

 

 楽 い 作

 No.101   36mm 

(70101)   4  115 

http://www.amazon.co.jp/%E6%A5 %BD%E3%81%97%E3%81%84% E5%B7%A5%E4%BD%9C%E3%8 2%B7%E3%83%AA%E3%83%BC %E3%82%BA­No­101­%E3%83%8 8%E3%83%A9%E3%83%83%E3% 82%AF%E3%82%BF%E3%82%A4 %E3%83%A4­36mm­70101/dp/B00 1VZNA96   

 

 楽 い 作

 No.97 

 

(70097)   2  907 

http://www.amazon.co.jp/%E3%82 %BF%E3%83%9F%E3%83%A4­70 097­000­%E6%A5%BD%E3%81% 97%E3%81%84%E5%B7%A5%E4 %BD%9C%E3%82%B7%E3%83% AA%E3%83%BC%E3%82%BA­No­ 97­%E3%83%84%E3%82%A4%E3 %83%B3%E3%83%A2%E3%83%B C%E3%82%BF%E3%83%BC%E3 %82%AE%E3%83%A4%E3%83% BC%E3%83%9C%E3%83%83%E3 %82%AF%E3%82%B9/dp/B001Q1

19AC   

   

P   2  300 

 

http://akizukidenshi.com/catalog/g/g I­02001/    

基板 

両面

基板 C

(6)

抵抗 

炭素皮膜抵 抗

W kΩ

入    1袋  100   

http://akizukidenshi.com/catalog/g/g R­25103/    

耐熱電子ワ

 

 

耐熱電子ワ m×

色 外

mm L

AWG    1袋  480   

http://akizukidenshi.com/catalog/g/g P­06756/    

ン ワ

  0116­71904­05­015  1袋  200 

http://akizukidenshi.com/catalog/g/g C­05159/   

ン ワ

赤  

  0116­71904­0

1­015   1袋  300   

http://akizukidenshi.com/catalog/g/g P­03471/    

ン ワ

黒  

  0116­71904­0

5­015   1袋  300   

http://akizukidenshi.com/catalog/g/g P­03472/    

L型 ンソ

  2212R­06G­85   2個 

1個

予備   40   

http://akizukidenshi.com/catalog/g/g C­03795/    

割 ン

ンソ

x   FHU­2x42SG  1  100 

http://akizukidenshi.com/catalog/g/g C­05780/   

+連結 角 ン

m     1   100 

http://akizukidenshi.com/catalog/g/g P­01864/   

mm mm +六角

m     1   50 

(7)

備品

 

小手先

       1  650 

 

http://akizukid enshi.com/cat alog/g/gT­036 42/      

 

● 制御 C言語 実装  

● 作成 ン Web ン 指示 信

部 rc­control 実際 制御 駆動部

rc­drive  

● rc­control rc­drive 通信 Unix ンソ 利用  

● Web ン HTML+JavaScript+PHP 実装  

● GUI 操作用 ン Web 配置 わ ン 押

度 全体 さ 困  

● 発生 い う Ajax 利用  

● 制御 実行 Linuxコ ン 実行 必要

あ PHP 利用  

● 配置さ ン 押さ 書 換え PHP

実行 そ rc­control 呼び出 制御  

構成管理

ソ コ GitHub 管理  

[email protected]:ryoma­jp/rccar.git   

回路設計

GPIO

端子

 

RaspberryPi Revesion2 GPIO端子 配列 図 通   詳細 ​http://elinux.org/RPi_Low­level_peripherals​ 参照  

(8)

 

 

端子 配列 図 通  

(9)

   

   

 

基盤配線

 

今回作成 コン 基盤配線 図 通  

(10)
(11)

設計

全体構成

 

制御

共通部

関数 戻 値

関数 機能 戻 値 OK/NG 返 う 関数 型 int型 定義 記 値

返 う  

 

(12)

#define RC_RET_ERROR_STATE (­2) /* 状態  */ 

#define RC_RET_ERROR_INTERNAL (­3) /* 内部変数異常値  */ 

#define RC_RET_ERROR_SYSCALL (­4) /*  コ  */ 

 

rc‐control

rc­control 引数 コ ン 指示 Unix ンソ 利用 rc­drive コ

ン 渡  

 

rc­control 引数 指定 コ ン 様 次項 通 rc­drive 渡 コ ン

様 rc­drive 項 参照  

rc‐control コ ン 様  

コ ン   forward 

説明  前進  

処理  rc­drive 前進通知  

   

コ ン   backward 

説明  後  

処理  rc­drive 後 通知  

   

コ ン   right 

説明  右旋回  

処理  rc­drive 右旋回通知  

   

コ ン   left 

説明  旋回  

処理  rc­drive 旋回通知  

(13)

コ ン   faster 

説明  速度  

処理  rc­drive 加速通知  

   

コ ン   slower 

説明  速度  

処理  rc­drive 減速通知  

   

コ ン   stop 

説明  停  

処理  rc­drive 停 通知  

   

コ ン   terminate 

説明  終了  

処理  rc­drive 終了通知  

 

Unix ンソ

記参照  

http://www.geocities.co.jp/Athlete­Samos/7760/study/unix_socket1.html 

構成

main関数  

割 rc­drive コ ン 信  

 

  main 

引数  in 

int argc 

引数 数 

char* argv[] 

引数 

(14)

機能  ● rc­control ン 関数 

● 引数 え コ ン rc­drive

信  

処理内容  ● rc­control 接続用ソ 生成

 

● 引数 え コ ン

RC_DRIVE_COMMAND 変換  

● rc­control コ ン 信  

● 非対応 コ ン 指定さ

rc­control コ ン 信 い 

 

rc‐drive

Unix ンソ コ ン 文字列 コ ン 様

次項 通  

 

rc‐drive コ ン 様  

rc­drive コ ン RC_DRIVE_COMMAND列挙型 定義  

  typedef enum _RC_DRIVE_COMMAND {  RC_DRIVE_COMMAND_FORWARD,  RC_DRIVE_COMMAND_BACKWARD,  RC_DRIVE_COMMAND_RIGHT,  RC_DRIVE_COMMAND_LEFT,  RC_DRIVE_COMMAND_FASTER,  RC_DRIVE_COMMAND_SLOWER,  RC_DRIVE_COMMAND_STOP,  RC_DRIVE_COMMAND_TERMINATE  } RC_DRIVE_COMMAND;     

コ ン   RC_DRIVE_COMMAND_FORWARD 

説明  前進  

処理  ● 右 速度 前回転

う 制御

   

(15)

コ ン   RC_DRIVE_COMMAND_BACKWARD, 

説明  後  

処理  ● 右 速度 後回転

う 制御

   

 

コ ン   RC_DRIVE_COMMAND_RIGHT 

説明  右旋回  

処理  ● 右 前 後 回

転 う 制

御  

   

コ ン   RC_DRIVE_COMMAND_LEFT 

説明  旋回  

処理  ● 前 右 後 回

転 う 制

御  

   

コ ン   RC_DRIVE_COMMAND_FASTER 

説明  加速  

処理  ● 回転数 増や う

制御  

   

コ ン   RC_DRIVE_COMMAND_SLOWER 

説明  減速  

処理  ● 回転数 減 う

制御  

(16)

説明  停  

処理  ● 回転 う

制御  

   

コ ン   RC_DRIVE_COMMAND_TERMINATE 

説明  終了  

処理  ● 制御 終了

ン 終了  

 

構成

以 構成さ  

● main 

● rc_drive_init 

● rc_drive_receive_command  ● rc_drive_set_forward  ● rc_drive_set_backward  ● rc_drive_set_turn_right  ● rc_drive_set_turn_left  ● rc_drive_set_faster  ● rc_drive_set_slower  ● rc_drive_set_stop  ● rc_drive_terminate   

各 機能 処理内容 記 通  

   

  main 

引数  ● in 

○ int argc 

■ 引数 数 

○ char* argv[]  ■ 引数 

● out 

(17)

機能  ● rc­drive ン 関数 

● 初期化→終了 →終了処理 実行

 

処理内容  ● rc_drive_init コ 初期化  

● コ ン 信 コ ン

実行  

● RC_DRIVE_COMMAND_TERMINAT

E 信 抜  

● 抜

停 さ ン

終了  

   

  rc_drive_init 

引数  ● in 

○  

● out 

○  

戻 値  RC_RET_* 返  

機能  rc­drive 初期化  

処理内容  ● 各変数 初期化  

● コ ン 信用 生成  

   

  rc_drive_receive_command 

引数  ● in 

○  

● out 

○  

戻 値  RC_RET_OK固定 

機能  コ ン 信用 ン 関数

信 コ ン ン 渡  

処理内容  ● コ ン 信 socket 生成 

● コ ン 信 ン

信 コ ン 渡  

● TERMINATEコ ン 信 抜

(18)

   

 

  rc_drive_set_forward 

引数  ● in 

○  

● out 

○  

戻 値  RC_RET* 返  

機能  前進  

処理内容   

 

構成

 

● ン  

○ 全体 初期化処理実行後 コ ン 実行 入  

○ コ ン 信自体 コ ン 信 行う 信コ ン 応 処理

ン 実行  

○ 部 間通信 今回 pthread_cond_wait コ ン 信

 

○ 信コ ン 渡 変数 使用 mutex_lock/unlock

忘  

○ TERMINATEコ ン 信 抜  

○ 抜 回転 コ ン 信 終了 確

認 終了  

● コ ン 信  

○ ン 生成後 rc­control コ ン 信 為

sock 生成 コ ン 信 実行  

○ 信 コ ン 変数 格納 pthread_cond_broadcast

ン wait 解除  

(19)

     

コン

HTML input ン 配置 type submit 生成  

ン 押さ ン 発生 あ 処理

JavaScript 実装  

● ン ン 追加 

● createXMLHttpRequest 生成 

● phpへ  

rc­controlへ コ ン 信 あ PHP 実装  

 

GUI

設計

ン 配置 感  

   

組 立 感  

 

(20)

 

(21)
(22)

 

(23)

   

(24)

 

● 完成図 駆動用 無線LAN子機

(25)

   

動 や 制御基板 配線 ソ 実装以

外 無線LAN 設定 rc­drive 自動起動設定 必要  

 

● 無線LAN設定 

○ 環境 設定方法 異 い  

○ 今回 記 設定 無線通信 確認  

○ /etc/network/interfaces 編集 記 追加  

(26)

allow­hotplug wlan0  #iface wlan0 inet manual  iface wlan0 inet static 

address xxx.xxx.xxx.xxx (設定 い固定IP) 

netmask 255.255.255.0  gateway 192.168.0.1 

#wpa­roam /etc/wpa_supplicant/wpa_supplicant.conf  #iface wlan0 inet dhcp 

wpa­ssid "SSID"  wpa­psk " ワ " 

 

○ /etc/wpa_supplicant/wpa_supplicant.conf 編集 い  

● rc­drive 自動起動設定 

○ crontab 使用  

$ sudo crontab ­e 

実行 開く 記 行 追加  

@reboot sudo [rc­drive ]   

参照

関連したドキュメント

Starting out with the balances of particle number density, spin and energy - momentum, Ein- stein‘s field equations and the relativistic dissipation inequality we consider

[r]

Also we define a soft S-contraction condition and study some fixed-point theorems on a complete soft S-metric space with necessary examples.. 2010 Mathematics Subject

Q-Flash Plus では、システムの電源が切れているとき(S5シャットダウン状態)に BIOS を更新する ことができます。最新の BIOS を USB

最近一年間の幹の半径の生長ヰま、枝葉の生長量

タッチON/OFF判定 CinX Data Registerの更新 Result Data 1/2 Registerの更新 Error Status Registerの更新 Error Status Channel 1/2 Registerの更新 (X=0,1,…,15).

エリアP 雑固体廃棄物 焼却設備 処理設備     瓦礫保管エリア     伐採木保管エリア

廃棄物の処理及び清掃に関する法律の改正に伴い、令和元年 12 月 14 日から「成年被後見人又は被