ロードセル(SC616C)とADコンバータ(HX711)を使用して、Arduinoで質量やトルクを測定する方法を紹介します。githubで公開されているHX711ライブラリを使用することで、校正や測定のプログラムを簡単に記述できます。 使用する部品一覧 Arduino Mega 2560 (ELEGOO製キット付属品を使用)ロードセル シングルポイント(ビーム型) SC616C … [もっと読む...] about ArduinoでSTEM教育 基礎編:ロードセルで質量を量る
Arduino基礎編
ArduinoでSTEM教育 基礎編:デジタル入力フィルタ
センサの入力信号は、ノイズ成分が含まれる場合がほとんどです。このノイズをソフトで除去する方法がデジタルフィルタです。今回は、代表的なローパスフィルタ、Mean(平均)フィルタ、Median(中央)フィルタのプログラム方法を紹介します。 ローパスフィルタ(RCフィルタ) ローパスフィルタは、周波数が低い信号を通して、周波数が高い信号を遮断します。また、このフィルタはRCフィルタとも呼ばれます。電気回路でローパスフィルタを作るときは、下記のような回路構成で、抵抗(R)とコンデンサ(C)を使用します。 これを式で表します。ある時刻tにおけるフィルタ出力値Voutは、係数をaとして、センサ入力値をVinとすると、下記のようになります。 Vout[t] = a * Vout[t-1] + (1-a) * … [もっと読む...] about ArduinoでSTEM教育 基礎編:デジタル入力フィルタ
ArduinoでSTEM教育 基礎編:センサのキャリブレーション
センサはいろいろな種類がありますが、どんなものにも誤差が生じます。この誤差をできるだけ小さくするために、キャリブレーション(校正、調整)を行います。例えば、ライントレースカーの場合だと、床材が異なると反射率も異なるので、その環境下でデータを取って、制御閾値を調整する必要があります。このようなセンサデータを処理プログラムする方法を紹介します。 起動時にキャリブレーションする方法 起動時時に実行されるsetup関数内で、基準となるラインを計測して、それをもとに閾値やヒステリシスを設定します。 ヒステリシスについて、簡単に説明します。例えば、照度センサの閾値を500に設定して、500以下だとLEDを点灯、501以上だとLEDを消灯するプログラムを作るとします。照度センサから入力される値は、常に微小に上下しているため、500や501といった値 … [もっと読む...] about ArduinoでSTEM教育 基礎編:センサのキャリブレーション
ArduinoでSTEM教育 基礎編:赤外線コントロール
今回は、Arduinoで赤外線受信モジュールとコントローラを使用して、3つのLEDのON/OFF制御をする方法を紹介します。LCDの使用方法については、以前の記事(ArduinoでSTEM教育-基礎編:LCD)を参照してください。 目次 使用する部品一覧赤外線受信モジュールの特徴や取り扱い方法回路図配線図組立完成写真プログラム動かしてみよう今回学んだポイント改造してみよう 使用する部品一覧 使用する部品は図のとおりです。これらの部品は、すべて「ELEGOO Arduino用のMega2560スタータキット」に含まれています。 Arduino MEGA2560 R3 …1個830穴 … [もっと読む...] about ArduinoでSTEM教育 基礎編:赤外線コントロール
ArduinoでSTEM教育 基礎編:超音波センサ
今回は、Arduinoと超音波センサで距離を測定し、距離に応じてLEDの明るさを変化させる方法を紹介します。LCDの使用方法については、以前の記事(ArduinoでSTEM教育-基礎編:LCD)を参照してください。 目次 使用する部品一覧超音波センサ(HC-SR04)の特徴や取り扱い方法超音波センサの測定原理回路図配線図組立完成写真プログラム動かしてみよう今回学んだポイント改造してみよう 使用する部品一覧 使用する部品は図のとおりです。これらの部品は、すべて「ELEGOO Arduino用のMega2560スタータキット」に含まれています。 Arduino MEGA2560 R3 …1個830穴 … [もっと読む...] about ArduinoでSTEM教育 基礎編:超音波センサ