Arduinoを使用して簡単な数学計算機を作成する方法

問題を排除するために楽器を試してください





この投稿では、通常の電卓よりもはるかに複雑な算術計算を実行できるArduinoを使用して電卓を構築します。



この投稿のモットーは、Arduinoを使用して計算機を作成することではなく、センサーやその他の周辺機器からさまざまな複雑なデータの解釈と計算を実行するArduinoの算術機能を紹介することです。

この楽しいプロジェクトには、USBケーブルとお好みのArduinoが必要です。 ArduinoIDEのシリアルモニターを介して計算結果を取得します。 C言語の基本に精通している場合、このプロジェクトは簡単です。さらに複雑な算術計算を行う独自のプログラムを作成できます。ここでは、Arduino IDEコンパイラに組み込まれているヘッダーファイル#includeを使用するため、ライブラリをダウンロードする必要はありません。



LCDディスプレイとキーボードをArduinoに接続して関数電卓を作成することもできますが、それは別の記事の主題です。 「TurboC ++」に精通している場合、最初のプログラムの1つは2つの数値の加算であり、すべての算術計算はコンピューターのCPU内で実行されます。ただし、ここでは、すべての算術計算はArduinoマイクロコントローラーで実行されます。足し算、引き算、割り算、掛け算から始めましょう。

これは2つの変数aとbを持つプログラムです。これらの2つの変数を使用して、それぞれ加算、減算、乗算、除算である「+、-、* /」演算子を使用して上記の計算を実行できます。

プログラム:

//-------------------Program Developed by R.Girish---------------//
#include
float a = 500
float b = 105.33
float add
float sub
float divide
float mul
void setup()
{
Serial.begin(9600)
Serial.println('Simple Arduino Calculator:')
Serial.println('n')
Serial.print('a = ')
Serial.println(a)
Serial.print('b = ')
Serial.println(b)
Serial.println('n')
Serial.print('Addition: ')
Serial.print('a + b = ') // add
add=a+b
Serial.println(add)
Serial.print('Multiplication: ')
Serial.print('a * b = ') // multiply
mul=a*b
Serial.println(mul)
Serial.print('Division: ')
Serial.print('a / b = ') // divide
divide=a/b
Serial.println(divide)
Serial.print('Subtraction: ')
Serial.print('a - b = ') // subtract
sub=a-b
Serial.println(sub)
}
void loop() // we need this to be here even though its empty
{
}
//-------------------Program Developed by R.Girish---------------//

出力:

上記のプログラムでは、10進関数を実行する「Float」を使用しています。シリアルモニターに値を出力するために「Serial.print()」を使用しています。プログラムの残りの部分は自明です。プログラム内の変数aとbを独自の値で変更できます。

もっと面白いもの、円の面積を動かしてみましょう。円の面積の式は次のとおりです。pi* radius ^ 2またはpix radiussquare。 piの値は一定であるため、piの値は小数点が作用する3.14159であるため、「float」を使用してプログラムで割り当てる必要があります。

プログラム:

//-------------------Program Developed by R.Girish---------------//
#include
float pi = 3.14159
float radius = 50
float area
void setup()
{
Serial.begin(9600)
Serial.println('Arduino Area Calculator:')
Serial.print('n')
Serial.print('Radius = ')
Serial.print(radius)
Serial.print('n')
area = pi*sq(radius)
Serial.print('The Area of circle is: ')
Serial.println(area)
}
void loop()
{
// we need this to be here even though it is empty
}
//-------------------Program Developed by R.Girish---------------//

出力:

Arduinoを使用した簡単な数学計算機

繰り返しますが、プログラムで独自の値を変更できます。括弧内の数値の二乗を行う「sq()」を使用しています。それでは、次のレベルに進みましょう。このプログラムでは、三角形の斜辺を計算するためにピタゴラスの定理を使用します。この背後にある式は、「hyp = sqrt(sq(base)+ sq(height))」または(base square + height square)の平方根です。

プログラム:

//-------------------Program Developed by R.Girish---------------//
#include
float base = 50.36
float height = 45.336
float hyp
void setup()
{
Serial.begin(9600)
Serial.println('Arduino Pythagoras Calculator:')
Serial.print('n')
Serial.print('base = ')
Serial.println(base)
Serial.print('height = ')
Serial.print(height)
Serial.print('n')
hyp=sqrt(sq(base) + sq(height))
Serial.print('The hypotenuse is: ')
Serial.print(hyp)
}
void loop()
{
// we need this to be here even though its empty
}
//-------------------Program Developed by R.Girish---------------//

出力:

プログラム内の独自の値を使用して、底辺と高さの値を変更できます。括弧内に平方根関数値を実行する「sqrt()」を使用しました。それでは、C言語コースの最初のフィボナッチ数列で学んだであろう人気のあるプログラムをやってみましょう。

一言で言えば、フィボナッチ数列は次の数を与える2つの前の数の加算であり、以下同様に、常に0、1で始まります。例:0、1。したがって、0 + 1 = 1次の数列は0、1、1です。したがって、1 + 1 = 2です。したがって、次のシリーズは、0、1、1、2…..などです。ここで書かれているプログラムは、最初のn桁目のフィボナッチ数を見つけることです。プログラムの「n」の値を変更して、目的のフィボナッチ数列を取得できます。

プログラム:

//-------------------Program Developed by R.Girish---------------//
#include
int n=6
int first = 0
int Second = 1
int next
int c
void setup()
{
Serial.begin(9600)
Serial.print('Fibonacci series for first ')
Serial.print(n)
Serial.print(' numbers are:nn')
for ( c = 0 c {
if ( c <= 1 )
next = c
else
{
next = first + Second
first = Second
Second = next
}
Serial.println(next)
}
}
void loop()
{
// put your main code here, to run repeatedly:
}
//-------------------Program Developed by R.Girish---------------//

出力:

だから、これはあなたの脳に十分な線量を与え、ハードウェア周辺機器を制御するために設計された何かがいくつかのナンセンスな数学計算をしていると混乱しているでしょう、もしそうなら、あなたは一人ではありません。

数学は電子工学で主要な役割を果たします。そのため、私たちの教科書は数学の方程式でいっぱいで、私たちも理解していません。電卓が私たちを救うためにやってくるのはその点です。

Arduinoを使用したこの単純な計算回路について質問がある場合は、貴重なコメントで表現できます。




前:0-60VLM317HV可変電源回路 次へ:ピエゾから電気を生成する方法