Како направити једноставан математички калкулатор користећи Ардуино

Испробајте Наш Инструмент За Елиминисање Проблема





У овом посту ћемо конструисати калкулатор користећи Ардуино, који може изводити далеко сложеније аритметичко рачунање од обичног калкулатора.



Мото овог поста није израда калкулатора помоћу Ардуина, већ представља аритметичку способност Ардуина, који врши различите сложене интерпретације података и прорачуне са сензора и друге периферне опреме.

За овај забаван пројекат потребан вам је само УСБ кабл и Ардуино по вашем избору. Резултат наших прорачуна добићемо путем серијског монитора Ардуино ИДЕ-а. Ако сте упознати са основама језика Ц, овај пројекат је права ствар и можете креирати сопствене програме који раде још сложеније аритметичке прорачуне. Овде ћемо користити датотеку заглавља #инцлуде која је уграђена у Ардуино ИДЕ компајлер, тако да не морате да преузимате ниједну библиотеку.



Можемо чак и ЛЦД дисплеј и тастатуру повезати са Ардуином и направити научни калкулатор, али то је предмет другог чланка. Ако сте упознати са „Турбо Ц ++“, један од наших првих програма биће додавање два броја, сви аритметички прорачуни се преносе у ЦПУ рачунара. Али овде се сви аритметички прорачуни извршавају у Ардуино микроконтролеру. Почнимо са сабирањем, одузимањем, дељењем и множењем.

Овде је програм са две променљиве а и б, користећи ове две променљиве можемо извршити горе наведене прорачуне помоћу оператора „+, -, * /“, који су сабирање, одузимање, множење, дељење.

Програм:

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

ИЗЛАЗ:

У горњем програму користимо „Флоат“ који извршава децималне функције, а за испис вредности у серијском монитору користимо „Сериал.принт ()“, остатак програма је саморазумљив. Можете променити променљиве а и б у програму са сопственим вредностима.

Померимо нешто занимљивије, подручје круга. Формула за површину круга је: пи * полупречник ^ 2 или пи пута полупречник квадрат. С обзиром на то да је вредност пи константна, морамо је доделити у програму помоћу „флоат“, јер је вредност пи 3,14159, где децимална тачка долази у обзир.

Програм:

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

ИЗЛАЗ:

Једноставни математички калкулатор који користи Ардуино

Опет, можете променити сопствене вредности у програму. Користимо „ск ()“ који врши квадратуру броја са у загради. Сада пређимо на следећи ниво. У овом програму користићемо Питагорину теорему за израчунавање хипотенузе троугла. Формула која стоји иза тога је: „хип = скрт (ск (база) + ск (висина))“ или квадратни корен од (основни квадрат + квадрат висине).

Програм:

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

ИЗЛАЗ:

Вредности основе и висине можете променити сопственим вредностима у програму. Користили смо „скрт ()“ који у загради даје вредности функције квадратног корена. Хајде сада да направимо популаран програм који бисмо научили на нашем почетку курса језика Ц, Фибоначијеве серије.

Укратко, Фибоначијева серија је сабирање два претходна броја која дају следећи број и тако даље, увек почиње са 0, 1. На пример: 0, 1. Дакле, 0 + 1 = 1 следећа серија је 0, 1, 1. Дакле, 1 + 1 = 2. Дакле, следећа серија је, 0, 1, 1, 2 ... ... и тако даље. Овде написан програм је проналажење Фибоначијевог броја за прву н-ту цифру. Можете да промените вредност „н“ у програму да бисте добили жељену Фибоначијеву серију.

Програм:

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

ИЗЛАЗ:

Дакле, ово би вашем мозгу дало довољно доза и збунило се да нешто дизајнирано за контролу хардверске периферне јединице врши неке глупе математичке прорачуне, ако јесте, нисте сами.

Математика игра главну улогу у електроници, зато је наш уџбеник препун математичких једначина, које чак ни не разумемо и тачка у којој нас калкулатори долазе да би нас спасили и ево је.

Ако имате било каква питања у вези са овим једноставним кругом калкулатора који користе Ардуино, можете их изразити кроз увек вредне коментаре.




Претходни: 0-60В ЛМ317ХВ променљиви круг напајања Следеће: Како произвести електричну енергију из Пиеза