ArduinoとLM35 / 36でLCD温度計を作る
コンポーネントと消耗品
> |
| × | 1 | |||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
このプロジェクトについて
<図>
こんにちは、みんな! Arduino UNOを備えたLCD温度計と、ジャンパーとブレッドボードを備えたLM35 / 36アナログ温度センサーの作成方法を紹介します。
このプロジェクトは、Arduinoを始めたばかりの人に非常に適しています。特別なエンジニアリングやプログラミングのスキルは必要ありません。もちろん、すべての部分が揃ったら、プロジェクトの構築には10分もかかりません。
ステップ1:パーツを集める <図> <図> <図> <図>
これらは、温度計を構築するために必要な部分です:
- 1x ArduinoUNOボード
- 1xブレッドボード
- 1x 16x2LCDディスプレイ
- 1xLM35またはLM36アナログ温度センサー
- 1x10kポテンショメータ-ディスプレイの明るさを調整するため*
- 19xジャンパー-すべてを接続する
彼らは公式Arduinoスターターキットでも満たされています こちらのArduinoの公式ウェブページから注文できます。また、Adafruit、SparkFun、Aliexpress、Banggoodなどのストアから個別に購入することもできます。
* 10kのポットがない場合は、私のように50kを使用できます!
ステップ2:温度計を作成する <図>
上記のFritzingの回路図に従って、LCDをブレッドボードに接続し、ジャンパーでArduinoボードに接続します。その後、ポテンショメータとセンサーをブレッドボードに接続し、ポットの左右のピンをアースに接続し、+ 5Vと中央のピンをLCDディスプレイに接続します。
次に、センサーをアース、+ 5V、およびArduinoに接続しますが、接続を間違えるとセンサーが280+ C(540 F)まで加熱され、損傷する可能性があるため、十分に注意してください。すべてを接続したら、次のステップに進みます。
ステップ3:Arduinoのプログラミング <図>
それを機能させるには、以下の2つのコードのいずれかを使用する必要があります。 統合開発環境を使用してArduinoにアップロードします 、短いIDEの場合、Arduinoの公式ページからダウンロードできます。
LCDに何も表示されない場合、または長方形が表示される場合は、文字がはっきり見えるまでポットを時計回り/反時計回りに回します。これで体温計ができ、家の中や外の周りの空気の温度を測定できます。
最初のコードはGaigeKernsからのものであり、LM36またはLM35からの読み取りに使用できます。 Gaigeに感謝します!私の新しい体温計プロジェクトもここでチェックしてください!
//ライブラリコードを含める#include //インターフェイスピンの番号でライブラリを初期化LiquidCrystallcd(12、11、5、4、3、2); //変数を初期化intsensorPin =0; int tempC、tempF; void setup(){// LCDの列と行の数を設定します:lcd.begin(16、2);} void loop(){tempC =get_temperature(sensorPin); tempF =celsius_to_fahrenheit (tempC); lcd.setCursor(0,0); lcd.print(tempF); lcd.print( ""); lcd.print((char)223); lcd.print( "F"); delay(200);} int get_temperature(int pin){//センサーが接続されているピンを関数に通知する必要があります。使用している//上記の可変ピン//そのピンの値を読み取るint温度=analogRead(pin); //読み取り値に基づいて温度を計算し、その値をバックフロート電圧=温度* 5.0;電圧=電圧/ 1024.0; return((電圧-0.5)* 100);} int celsius_to_fahrenheit(int temp){return(temp * 9/5)+ 32;}
#include LiquidCrystal lcd(12、 11、5、4、3、2); // LCDを接続するデジタルピンconstint inPin =0; // A0は、sensorvoid setup(){lcd.begin(16,2);} void loop(){int value =analogRead(inPin);を接続する場所です。 //センサーから値を読み取りますlcd.setCursor(0,1);フロートミリボルト=(値/ 1024.0)* 5000;フロート摂氏=ミリボルト/ 10; lcd.clear(); lcd.setCursor(0,0); lcd.print(celsius); lcd.print( "C"); lcd.setCursor(0,1); lcd.print((摂氏* 9)/ 5 + 32); //摂氏をfahrehaitに変換しますlcd.print( "F"); delay(1000);}
FJXZ51IHQAX1RR7.txt
コード
- コードスニペット#1
- コードスニペット#2
コードスニペット#1 プレーンテキスト
//ライブラリコードを含める#include //インターフェイスピンの番号でライブラリを初期化LiquidCrystallcd(12、11、5、4、3、2); //変数を初期化intsensorPin =0; int tempC、tempF; void setup(){// LCDの列と行の数を設定します:lcd.begin(16、2);} void loop(){tempC =get_temperature(sensorPin); tempF =celsius_to_fahrenheit(tempC); lcd.setCursor(0,0); lcd.print(tempF); lcd.print( ""); lcd.print((char)223); lcd.print( "F"); delay(200);} int get_temperature(int pin){//センサーが接続されているピンを関数に通知する必要があります。使用している//上記の可変ピン//そのピンの値を読み取るint温度=analogRead(pin); //読み取り値に基づいて温度を計算し、その値をバックフロート電圧=温度* 5.0;電圧=電圧/ 1024.0; return((電圧-0.5)* 100);} int celsius_to_fahrenheit(int temp){return(temp * 9/5)+ 32;}
コードスニペット#2 プレーンテキスト
#includeLiquidCrystal lcd(12、11、5、4、3、2); // LCDを接続するデジタルピンconstint inPin =0; // A0は、sensorvoid setup(){lcd.begin(16,2);} void loop(){int value =analogRead(inPin);を接続する場所です。 //センサーから値を読み取りますlcd.setCursor(0,1);フロートミリボルト=(値/ 1024.0)* 5000;フロート摂氏=ミリボルト/ 10; lcd.clear(); lcd.setCursor(0,0); lcd.print(celsius); lcd.print( "C"); lcd.setCursor(0,1); lcd.print((摂氏* 9)/ 5 + 32); //摂氏をfahrehaitに変換しますlcd.print( "F"); delay(1000);}
製造プロセス
- Samsung SAMIIO、Arduino UNO、RaspberryPiで数分で火災探知機を作る
- フライトシミュレータ用のArduinoを備えたLCDパネル
- イスラムの祈りの時間とArduino時計
- LCDアニメーションとゲーム
- Arduino UNOを使用してLCDTFTスクリーンに画像を表示する!
- ArduinoとMPU6050によるサーボモーターの制御
- u-blox LEA-6H 02GPSモジュールとArduinoおよびPython
- Arduinoによる音声認識と合成
- ArduinoUnoでLEDマトリックスを制御する
- DS1302RTCを備えたシンプルな目覚まし時計
- ArduinoUnoを使用した25kHz4ピンPWMファン制御