DCモータの制御

Similar documents
Arduinoで組込み制御

Microsoft Word - SU1202教本(Disp)原稿.docx

スライド 1

Taro-テキスト.jtd

arduino プログラミング課題集 ( Ver /06/01 ) arduino と各種ボードを組み合わせ 制御するためのプログラミングを学 ぼう! 1 入出力ポートの設定と利用方法 (1) 制御( コントロール ) する とは 外部装置( ペリフェラル ) が必要とする信号をマイ

Microsoft Word - SU1204教本(Driver)原稿.docx

Microsoft Word - SU1203教本(Sens)原稿.docx

Arduinoで計る,測る,量る

前回の内容 マイクロコンピュータにおけるプログラミング PC上で作成 コンパイル マイコンに転送 実行 プログラムを用いて外部の装置を動作させる LED turnonled turnoffled LCD printf プログラムを用いて外部の装置の状態を読み取る プッシュスイッチ getpushsw

スライド 1

Arduino をはじめよう オープンソースハードウェア入門 ~ Arduino( アルドゥイーノ ) 始めてみませんか?

目次 1 I2Cとは 13 結線写真 2 センサの多くがI2Cに対応 14 WHO_AM_I 3 マイコンでのI2C通信例 15 I2C読込みプログラム 4 とは 16 I2C読込みスクリプト概要① 5 タイミングパラメータ 17 I2C読込みスクリプト概要② 6 書込み 18 センサ読込みプログラ

Arduino の勉強会 平成 23 年 1 月 5 日於 : 鳥取大学

みんなの Arduino 入門 課題と演習 本資料は みんなの Arduino 入門 を使っている方々への課題 ( 演習含む ) を参考としてま とめたものです 本書の理解度の確認と今後のステップアップのためにご利用下さい ( 最終更新日 :2014 年 4 月 25 日 ) 株式会社タブレイン T

講習会 Arduino

1 1 Arduino とは Arduino アルドゥイーノ は ワンボードマイコンの一種で オープンソースハードウェアであ り 組み立て済みの基板を購入することもできるほか 誰でも自分の手で Arduino を組み立てる ことができます USBコネクタでPCと接続して利用します デジタルポートとア

SpeC記述のC記述への変換 (SpecCによるソフトウェア記述の実装記述への変換)

正転時とは反対に回転する これが逆転である 図 2(d) の様に 4 つのスイッチ全てが OFF の場合 DC モータには電流が流れず 停止する ただし 元々 DC モータが回転していた場合は 惰性でしばらく回転を続ける 図 2(e) の様に SW2 と SW4 を ON SW1 と SW3 を O

GR-SAKURA-SAのサンプルソフト説明

Arduino Processing and ) Fig1. Arduino Homepage : h;p://

Taro-テキスト.jtd

まず,13 行目の HardwareTimer Timer(1); は,HardwareTimer というクラスを利用するという宣言である. この宣言によって Timer というインスタンスが生成される.Timer(1) の 1 は,OpenCM に 4 個用意されているタイマのうち,1 番のタイマ

slide

スライド 1

HDLトレーナーサンプルプログラム説明書

Arduino UNO IS Report No. Report Medical Information System Laboratory

パーツリスト 組み立て前にすべてのパーツがそろっているかご確認ください 種類 品番 数 種類 品番 数 基板 I2C LCD 1 コンデンサ 0.1uF (104) 積層セラミック 1 IC ATtiny コンデンサ 10uF 電解 1 半固定抵抗 10~50kΩ 1 コネクタ IC ソ

2CH DC (PU-2709) DC DC Arduino 製作に必要な部品などを表にまとめてみましょう 用意するもの 型番など 必要数 メモ Arduino Arduino UNO R3 1 パルスを作るマイコンボード 28BYJ-48 1 ACアダプター DC5V 1 DCジャック

訂正 _ 第 1 回 1 Arduino Arduino を用意する 入力 アナログ Analog 入出力 任意の電圧を扱える 電源系 外部入力 7 12V デジタル digital 入出力 リセットボタン Low High いわゆる 01 が入出力される 通常は Low 0V GND High 5

ヒダピオ学習回路について

モータ HILS の概要 1 はじめに モータ HILS の需要 自動車の電子化及び 電気自動車やハイブリッド車の実用化に伴い モータの使用数が増大しています 従来行われていた駆動用モータ単体のシミュレーション レシプロエンジンとモータの駆動力分配制御シミュレーションの利用に加え パワーウインドやサ

講習会 Arduino

CCD リニアイメージセンサ用駆動回路 C CCD リニアイメージセンサ (S11155/S ) 用 C は 当社製 CCDリニアイメージセンサ S11155/S 用に開発された駆動回路です S11155/S11156-

ReferSTAR 78K/Kx2(CT-781) Applilet EZ PLプログラム集

TOPPERS活用アイデア・アプリケーション開発

スライド 1

図 1 で示すように割り込み作業に対応していない間は CPU が他の作業を行えま す 割り込みが発生した時に作業中の仕事を一時停止し 割り込みハンドラに 入ってタスクを実行します 割り込み作業が終わった後停止した作業を再開し ます 割り込み対応コードが停止したプロセスに影響ありますので なるべく 最

ヒダピオ学習回路について

MODLINK-2 Arduino&IoT 組立式開発ボード Manual モジュリンク 2 取扱説明書

Studuinoプログラミング環境

char int float double の変数型はそれぞれ 文字あるいは小さな整数 整数 実数 より精度の高い ( 数値のより大きい より小さい ) 実数 を扱う時に用いる 備考 : 基本型の説明に示した 浮動小数点 とは数値を指数表現で表す方法である 例えば は指数表現で 3 書く

問 1 図 1 の図形を作るプログラムを作成せよ 但し ウィンドウの大きさは と し 座標の関係は図 2 に示すものとする 図 1 作成する図形 原点 (0,0) (280,0) (80,0) (180,0) (260,0) (380,0) (0,160) 図 2 座標関係 問 2

論文番号 分 2-2 平成 24 年度全国情報技術教育研究会第 41 回全国大会 ( 新潟大会 ) Xbee を活用した無線通信の研究 期日平成 24 年 8 月 9 日 ( 木 )~10 日 ( 金 ) 場所長岡市シティホールプラザ アオーレ長岡 香川県立三豊工業高等学校 電子科 本行

untitled

赤外線レーザー 360 距離センサ XV-11 LIDAR Sensor 取り扱い説明書 もくじ お使いになるまえに 各部のなまえと扱い方 2 使い方 (Processing GUI で使う ) 必要なソフトのインストール 3 接続方法 3 GUI の操作方法 4 使い方 ( ロボットに組み込む )

三菱電機マイコン機器ソフトウエア株式会社

Arduino 2016/03/26 京都大学学術情報メディアセンター 喜多一 1

Arduino をドリトルから 制御する教材の試行 鈴木裕貴 1

Mathematica で Arduino を利用する (2012 年度 ) はじめに情報工学部では全学科で Arduino を導入して フィジカルコンピューティングに関連した教育を行ってきている 電子情報工学科ではいくつかの実験演習を通じて Arduino を取り入れてきている ここでは 電子情報

ASL-35CW ( W) ( R) LED フラッシュ マルチサイレン 型式 ASL-35CW(R) ASL-35CW(W) 電源 DC12V ±10%( 極性あり ) 消費電流 Max.55mA( サイレン )+75mA( フラッシュ ) LED フラッシュ 1 回 4 回閃光 / 秒 ( 切替

IEEE1888 開発キットの活用 電力管理システムを作る 慶應義塾大学 メディアデザイン研究科 秋山寛子

フロントエンド IC 付光センサ S CR S CR 各種光量の検出に適した小型 APD Si APD とプリアンプを一体化した小型光デバイスです 外乱光の影響を低減するための DC フィードバック回路を内蔵していま す また 優れたノイズ特性 周波数特性を実現しています

バッテリー電源タイプ(新ドライバ)パンフレット

Taro-82ADAカ.jtd

Microsoft Word - toppers-contest-2014_NTB.doc

Microsoft Word - 実験4_FPGA実験2_2015


実験題吊  「加速度センサーを作ってみよう《

PowerPoint プレゼンテーション

Processingをはじめよう

C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ

PowerPoint プレゼンテーション

HW-Slides-04.ppt

86Duino EduCake Analog I/O ピン機能応用編 1. Analog I/O 紹介 アナログ vs デジタル : 前篇では 86Duino EduCake の基本仕様と IDE の簡単な使い方やデジタル IO を説明しました この章では アナログ

Microsoft PowerPoint - 工学ゼミⅢLED1回_2018

講習会 Arduino

GR-SAKURA-SAのサンプルソフト説明

IntroductionForGR-PEACH.pptx

1. プログラム実行時の動作プログラムを実行すると以下のように動作します 1) NUCLEO-F401RE 上の LED LD2( 緑 ) が 200mSec 間隔で点滅します 2. プロジェクトの構成 2.1. プロジェクト F401N_BlinkLD2 の起動画面 TrueSTUDIO で作成し

<4D F736F F D20438CBE8CEA8D758DC F0939A82C282AB2E646F63>

割り込み 今までのプログラムは 順番にそって命令を実行していくのみ それはそれで良いが 不便な場合もある 例えば 時間のかかる周辺機器を使う場合 その周辺機器が動作を終了するまで CPU は待たなければいけない 方法 1( ポーリング ) 一定時間毎に 周辺機器の動作が終了したか調べる 終了していれ

Microsoft PowerPoint P演習 第10回 関数.ppt [互換モード]

Nios II - PIO を使用した I2C-Bus (2ワイヤ)マスタの実装

Transcription:

Arduino の紹介 京都大学防災研究所技術室 中川潤

目次 はじめに Arduino とは DC モーターの制御 振動台模型の活用 センサーの液晶表示 センサー液晶表示の活用 おわりに 参考文献

はじめに 目的 Arduino の簡単な使い方を学んでもらい 業務に役立てるきっかけにする Arduino が実際にどんなものに使用できるかイメージをつかんでもらう

Arduino とは マイコンを使った開発ボードである 既製品が販売されており はんだ付けを必要としない 誰でも簡単に電気回路を使った物を作成できるように という目的で作られている コンピュータを使って通信や制御をする センサなどを使って 情報を取り込む スケッチというプログラムを作成し Arduino に書き込むことでセンサの値を読み取ったり アクチュエータを動作させることができる

DC モーターの制御 小型 DC モーターの回転速度を制御する 回転速度の調整には可変抵抗を用いる モータドライバ IC TA7291P を使用する DC モーターを扱う場合は Arduino にとって過電流となるため 別電源 ( 乾電池 ) を用意する 可変抵抗 : 連続的に抵抗値を変えられる抵抗器 ボリューム モータドライバ IC: モーターを動かすときに必要な電流の ON/OFF や方向をマイコンから制御するための IC PWM 制御をして回転数を制御する

モーターのスピードを決めるための信号用端子 PWM 出力によって制御 モーターの静止 正転 逆転を決めるための信号用端子

スケッチ void setup(){ pinmode(1,output); // 信号用ピン pinmode(2,output); // 信号用ピン } void loop(){ // アナログ入力 int val=analogread(0) ; //0~1023の値にする // 静止 / 正転の状態に分けてプログラムする if(val<=1){ // 静止 :0~1 //LOW,LOW でデジタル出力 digitalwrite(1,low); digitalwrite(2,low); }else if(val>2){ // 正転 :2~1023 //HIGH,LOW でデジタル出力 digitalwrite(1,high); digitalwrite(2,low); //val が大きいほど出力値も大きくなる analogwrite(3,val-1); // 出力値 :1~1023 } }

Arduino とモーターで振動台模型を作る

振動台模型の活用 紙ぶるるくん 名古屋大学福和研究室で開発 地震に弱い建物の特徴を実験しながら楽しく理解できるペーパークラフト教材 筋交いなどを組み合わせることが可能 2014 年宇治キャンパス公開でも配布 http://www.sharaku.nuac.nagoya-u.ac.jp/laboft/bururu/index.htm 紙ぶるるくん のような建物模型を振動台上に載せることで振動実験教材として展示会などにも活用できるのではないか

センサーの液晶表示 各種センサーの値を液晶盤に表示させ 確認する 使用するセンサー温度センサー CDS( 光センサー ) 加速度センサー 使用する出力部品 LCD LED ブザー CDSの値が700 以上になるとLEDが点灯する 温度センサーが25 以上になるとブザーが鳴る 温度センサー CDS 加速度センサーの値をLCDに表示させる

センサーの液晶表示

スケッチ include <LiquidCrystal.h> //LCD を使用 #define BEAT 300 // ブザー音の継続時間定数の定義 #define PINNO 7 // ブザー出力ピン指定 long x_sum, y_sum, z_sum; float sensor1pin =0; //floatは浮動小数点型 アナログピン0を sensor1pinに格納する float sensor2pin =1; // アナログピン1をsensor2Pinに格納する // 変数の定義 (CDSおよび温度センサー 加速度センサー) float v = 5; float temp1 = 0; int CDS1 = 0; 変数の定義 float value1 = 0; int sum = 0; int data = 0; int count=0; int accx = 0;int acc1 = 0; int accy = 0;int acc2 = 0; int accz = 0;int acc3 = 0; int accx = 0;int accy = 0;int accz = 0; LiquidCrystal lcd(12,11,5,4,3,2); //LCD の使用したピン番号 void setup() { lcd.begin(16, 2);//LCD の桁数と行数を 16x2 桁とセットする pinmode(8,output) ; //LED の出力ピン番号 } void loop() {lcd.clear(); //LCD の表示をクリアする sum = 0; // センサーの値を 50 回読み取り平均化する for (int i=0;i<50;i++){ data = analogread(0); // センサーピン 1 の温度センサーの値を読み取る sum = sum + data; // delay(2); //1000 分の 2 秒 value1 = sum / 50; // 平均化した値を value1 に格納する } 初期設定 繰り返し処理 平温均度化セのン計サ算ー値の

int anain ; anain = analogread(1) ; // CDS を接続したアナログ 0 番ピンを読み取る if (anain >= 700) { // 700 がしきい値です // 光がしきい値より暗いとき digitalwrite(8, HIGH) ; // LED を点灯で出力 } else { } // 光がしきい値より明るいとき digitalwrite(8, LOW) ; // LED を消灯で出力 if (temp1 <= 25) notone(pinno); // 温度 25 度以下ではブザー出力しない else { tone(pinno,523,beat); //25 度を超えた場合 ブザーが鳴る ( 出力ピン 周波数 継続時間 ) } delay(beat); // 継続時間間隔をあける delay(10); // L E D が点灯する設定 ブザー が鳴る設置 C D S 値を読み取り 閾値以上で 温度が 25 度以上で int x=analogread(2);int y=analogread(3);intz=analogread(4); x_sum = 0; for (int i=0;i<100;i++){ accx = x; // アナログピン2の加速度センサーの値を読み取る x_sum = x_sum + accx; // delay(2); //1000 分の2 秒 acc1 = x_sum / 100;} // 平均化した値をacc1に格納する y_sum = 0; for (int i=0;i<100;i++){ accy = y; // アナログピン3の加速度センサーの値を読み取る y_sum = y_sum + accy; // delay(2); //1000 分の2 秒 acc2 = y_sum / 100; }// 平均化した値をacc2に格納する z_sum = 0; for (int i=0;i<100;i++){ accz = z; // アナログピン4の加速度センサーの値を読み取る z_sum = z_sum + accz; // delay(2); //1000 分の2 秒 acc3 = z_sum / 100; } }// 平均化した値をacc3に格納する 加速度計値 ( X Y Z ) の読み取りと平均化の計算

CDS1 = analogread(sensor2pin); // アナログピン 1 を CDS1 に格納する temp1=((v/1024)*value1)*100; // 読み取った value1 値を温度に換算 accx=acc1-510; accy=acc2-503; accz=acc3-500; lcd.print("t:"); //LCD に T: と表示する lcd.print(temp1); //LCD に temp1 の値を表示する lcd.setcursor(7,0); // カーソルを 7 桁 0 行目に指定する lcd.write(0xdf); // を表示する lcd.print("c"); //c を表示する lcd.setcursor(10,0); // カーソルを 10 桁 0 行目に指定する lcd.print("c:"); //LCD に C: と表示する lcd.print(cds1); //LCD に CDS1 の値を表示する C D S の値を表示 センサー値の換算 L C D に温度センサーと lcd.setcursor(0,1); // カーソルを 0 桁 1 行目に指定する lcd.print("x"); //LCD に X と表示する lcd.print(accx) ; //LCD に accx の値を表示する lcd.print(",") ; //LCD に, と表示する lcd.print("y"); //LCD に Y と表示する lcd.print(accy) ; //LCD に accy の値を表示する lcd.print(",") ; //LCD に, と表示する lcd.print("z"); //LCD に Z と表示する lcd.print(accz) ; //LCD に accz の値を表示する delay(1000); //1 秒停止する } の値を表示 L C D に加速度センサー

センサー液晶表示の活用 ひずみチェッカー 加速度が正常に作動しているか確認する機器 加速度計を傾けることで検知した傾き ( 重力 ) を手軽に表示できる 今回作成したものもこれと同じ働きをする PC のシリアルモニタを出さなくてもデータ値を表示でき センサの計測結果をリアルタイムで確認することができるため 様々な用途に活用可能である

おわりに 今回紹介した作品例を作成するのに思った以上に時間がかかった 初心者用の Arduino であっても スケッチのようなソフトウェアの知識とハードウェアを作成する技術が必要であるので 実用化するにはある程度の時間を見積もらなければならない ただ 導入材料としては優れていると感じた 今後 この発表が実際の業務に少しでも役立つことにつながれば幸いある

参考文献 Arduino をはじめよう Arduino でロボット工作をたのしもう! http://processing.web.fc2.com/arduino001.pdf http://kousaku-kousaku.blogspot.jp/2008/06/arduinodcta7291p.html