Kā izveidot vienkāršu matemātisko kalkulatoru, izmantojot Arduino

Izmēģiniet Mūsu Instrumentu Problēmu Novēršanai





Šajā amatā mēs izveidosim kalkulatoru, izmantojot Arduino, kas var veikt daudz sarežģītāku aritmētisko aprēķinu nekā parasts kalkulators.



Šī ieraksta moto nav izveidot kalkulatoru, izmantojot Arduino, bet gan parādīt Arduino aritmētisko spēju, kas veic dažādas sarežģītas datu interpretācijas un aprēķinus no sensoriem un citām perifērijas ierīcēm.

Šim jautrajam projektam jums vienkārši nepieciešams USB kabelis un izvēlētais Arduino. Mēs veiksim aprēķinu rezultātu, izmantojot Arduino IDE sērijveida monitoru. Ja esat iepazinies ar C valodas pamatiem, šis projekts ir kūkas gabals, un jūs varat izveidot savas programmas, kas veic vēl sarežģītākus aritmētiskos aprēķinus. Šeit mēs izmantosim galvenes failu #include, kas ir iebūvēts Arduino IDE kompilatorā, tāpēc jums nav nepieciešams lejupielādēt nevienu bibliotēku.



Mēs pat varam savienot LCD displeju un tastatūru ar Arduino un izveidot zinātnisku kalkulatoru, taču par to ir cits raksts. Ja esat iepazinies ar “Turbo C ++”, viena no mūsu pirmajām programmām būs divu skaitļu pievienošana, visi aritmētiskie aprēķini tiek veikti datora procesorā. Bet šeit visi aritmētiskie aprēķini tiek veikti Arduino mikrokontrollerī. Sāksim ar saskaitīšanu, atņemšanu, dalīšanu un reizināšanu.

Šeit ir programma ar diviem mainīgajiem a un b, izmantojot šos divus mainīgos, mēs varam veikt iepriekš minētos aprēķinus, izmantojot operatorus “+, -, * /”, kas attiecīgi ir saskaitīšana, atņemšana, reizināšana, dalīšana.

Programma:

//-------------------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---------------//

REZULTĀTS:

Iepriekš minētajā programmā mēs izmantojam “Float”, kas veic decimālās funkcijas, mēs izmantojam “Serial.print ()”, lai drukātu vērtības seriālajā monitorā, pārējā programma ir pašsaprotama. Varat mainīt mainīgos a un b programmā ar savām vērtībām.

Pārvietosim kaut ko interesantāku, apļa laukumu. Apļa laukuma formula ir: pi * rādiuss ^ 2 vai pi reizes kvadrāta rādiuss. Tā kā pi vērtība ir nemainīga, mums tā jāpiešķir programmā, izmantojot “pludiņu”, jo pi vērtība ir 3,14159, kur spēlē decimālzīmi.

Programma:

//-------------------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---------------//

REZULTĀTS:

Vienkāršs matemātiskais kalkulators, izmantojot Arduino

Atkal jūs varat mainīt savas vērtības programmā. Mēs izmantojam “sq ()”, kas iekavās norāda kvadrātu ar kvadrātu. Tagad pārejam uz nākamo līmeni. Šajā programmā mēs izmantosim Pitagora teorēmu, lai aprēķinātu trijstūra hipotenūzu. Formula aiz tā ir: “hyp = sqrt (sq (pamats) + sq (augstums))” vai kvadrātsakne no (bāzes kvadrāts + augstuma kvadrāts).

Programma:

//-------------------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---------------//

REZULTĀTS:

Programmā varat mainīt bāzes un augstuma vērtības ar savām vērtībām. Mēs izmantojām “sqrt ()”, kas iekavās veic kvadrātsaknes funkciju vērtības. Tagad izdarīsim populāru programmu, kuru mēs būtu iemācījušies C valodas kursa sākumā, Fibonači sērijā.

Īsumā Fibonači sērija ir divu iepriekšējo skaitļu pievienošana, kas dod nākamo numuru un tā tālāk, vienmēr sākas ar 0, 1. Piemēram: 0, 1. Tātad 0 + 1 = 1 nākamā sērija ir 0, 1, 1. Tātad, 1 + 1 = 2. Tātad nākamā sērija ir 0, 1, 1, 2 ... .. un tā tālāk. Šeit uzrakstītā programma ir Fibonacci numura atrašana pirmajam n ciparam. Programmā var mainīt ‘n’ vērtību, lai iegūtu vēlamo Fibonači sēriju.

Programma:

//-------------------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---------------//

REZULTĀTS:

Tātad, tas būtu devis pietiekami daudz devu jūsu smadzenēm un sajaucis, ka kaut kas, kas paredzēts aparatūras perifērijas ierīču kontrolei, veic dažus blēņas matemātiskos aprēķinus, ja tā, jūs neesat viens.

Matemātikai ir galvenā loma elektronikā, tāpēc mūsu mācību grāmata ir pilna ar matemātiskiem vienādojumiem, ko mēs pat nesaprotam un kur kalkulatori nāk mūs glābt, un šeit tas ir.

Ja jums ir kādi jautājumi par šo vienkāršo kalkulatora shēmu, izmantojot Arduino, varat tos izteikt, izmantojot arvien vērtīgus komentārus.




Pāri: 0-60V LM317HV mainīga barošanas ķēde Nākamais: Kā ģenerēt elektrību no Pjezo