|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 4:38 pm
Проблем с програмиране на Ардуино уно
| Автор |
Съобщение |
|
tosho
Ранг: Минаващ
Регистриран на: Сря Мар 04, 2015 4:34 pm Мнения: 12
|
 Проблем с програмиране на Ардуино уно
Здравейте, приятели  Имам проблем с програмирането на ардуино уно. Разполагам със сензори за напрежение https://encrypted-tbn3.gstatic.com/imag ... dfSslWJLmAи relay shield. http://www.microbot.it/open2b/var/catal ... 20-800.jpgТрябва ми програма, която при достигане на определено напрежение от сензора за напрежение да превключва релета. Примерно при заряд на акумулатор,когато напрежението достигне 12V ,реле едно да се изключи и да се включи реле 2. И когато напрежението падне под 12V реле 2 да изключи ,а реле 1 да се включи. Ще бъда много благодарен, ако някой ми помогне 
|
| Сря Мар 04, 2015 4:54 pm |
|
 |
|
ike
Ранг: Форумен бог
Регистриран на: Пет Фев 04, 2005 9:59 pm Мнения: 6019 Местоположение: София
|
 Re: Проблем с програмиране на Ардуино уно
Това не е сензор, това са 2 резистора. Колко плащаш за тази програма?
_________________ Warriors of the Night, ASSEMBLER!!!
|
| Сря Мар 04, 2015 5:02 pm |
|
 |
|
s7ama7
Ранг: Почетен член
Регистриран на: Съб Ное 29, 2014 10:11 am Мнения: 774
|
 Re: Проблем с програмиране на Ардуино уно
И за това ти трябва микроконтролер ? 
|
| Сря Мар 04, 2015 7:10 pm |
|
 |
|
tosho
Ранг: Минаващ
Регистриран на: Сря Мар 04, 2015 4:34 pm Мнения: 12
|
 Re: Проблем с програмиране на Ардуино уно
Да. Така искам да го направя. Ето и схемата , която искам да реализирам:Делителя на напрежение (сензора) следи напрежението на батерията и подава сигнал на А0 на ардуиното , когато това напрежение падне заради товара ,които разрежда батерията искам платката Relay shild да превключи релетата си. Едната верига която управлява да е затворена ,а другата отворена.
|
| Сря Мар 04, 2015 7:54 pm |
|
 |
|
s7ama7
Ранг: Почетен член
Регистриран на: Съб Ное 29, 2014 10:11 am Мнения: 774
|
 Re: Проблем с програмиране на Ардуино уно
Тук нужда от микроконтролер аз не виждам . Това което искаш да направиш може да се направи с няколко елемента и ще струва 5 пъти поне по-евтино и по-малко . Но да не съм офтопик Трябва да си сметнеш делителя при 12V , след което ползваш тази функция http://arduino.cc/en/Reference/analogRead за да четеш AЦП-то . Всичко е много добре обяснено , само трябва да го прочетеш и ако имаш елементарни познания по програмиране не би трябвало да имаш проблем . Тук имаш и функцията за цифровите входове/изходи http://arduino.cc/en/Reference/digitalWrite . Остава да направиш условието .
|
| Чет Мар 05, 2015 12:19 pm |
|
 |
|
tosho
Ранг: Минаващ
Регистриран на: Сря Мар 04, 2015 4:34 pm Мнения: 12
|
 Re: Проблем с програмиране на Ардуино уно
Делителя не е ли сметнат ? Това за функциите го бях гледал преди , разбирам почти всеки ред за какво е ,но не мога да ги свържа в една обща ,работеща програма . Точно условието ми е проблема . Съгласен съм , че не е необходим контролер и може да стане по-лесно и по-евтино , но имам ардуното и искам него да използвам . Ако можеш да ми помогнеш с програмата ще ти бъда много благодарен . 
|
| Чет Мар 05, 2015 1:16 pm |
|
 |
|
s7ama7
Ранг: Почетен член
Регистриран на: Съб Ное 29, 2014 10:11 am Мнения: 774
|
 Re: Проблем с програмиране на Ардуино уно
Какъв акумулатор мислиш да зареждаш ? Това нещо си мисля че трябва да има някакъв хистерезис Делителя може да си го изчислиш с помощта на този сайт http://www.electronics2000.co.uk/calc/potential-divider-calculator.php , за да знаеш при 12v какво напрежение ще се получи от извода на делителя . А като знаеш това напрежение , може да изчислиш при каква стойност на регистъра на АЦП ще имаш примерно 3 V .
Последна промяна s7ama7 на Чет Мар 05, 2015 4:23 pm, променена общо 1 път
|
| Чет Мар 05, 2015 3:40 pm |
|
 |
|
tosho
Ранг: Минаващ
Регистриран на: Сря Мар 04, 2015 4:34 pm Мнения: 12
|
 Re: Проблем с програмиране на Ардуино уно
Мисля да е този : http://autocom.bg/%D0%BF%D1%80%D0%BE%D0 ... ycle-60-ahvoid loop() { val = analogRead(analogPin); if (val >= ?? ) { Защо са тези въпросителни ? Как микроконтролера ще разбира какво е напрежението ? Не трябва ли някъде да е указно ,че трябва да брой от 0-1023 в зависимост от напрежението -0-5V нa A0? Извинявам се ако въпросите ми са глупави , сега навлизам в материята.  Благодаря за бързия отговор.
|
| Чет Мар 05, 2015 4:04 pm |
|
 |
|
s7ama7
Ранг: Почетен член
Регистриран на: Съб Ное 29, 2014 10:11 am Мнения: 774
|
 Re: Проблем с програмиране на Ардуино уно
Оставил съм ги въпросителни защото трябва да се изчисли , дори съм писал по-горе как става !
|
| Чет Мар 05, 2015 4:16 pm |
|
 |
|
M_I_T_A_K_A
Ранг: Минаващ
Регистриран на: Чет Апр 22, 2010 11:56 am Мнения: 27
|
 Re: Проблем с програмиране на Ардуино уно
Без да имам претенции, че разбирам от програмиране малко помощ и от мен. На мястото на ?? може да се пише напрежението, което е необходимо да се следи. А стойностите на R1 и R2 ги заместваш с тези на "сензора" 5.0 е стойноста на референтното напрежение, в случая захранващото.
|
| Пет Мар 06, 2015 12:34 am |
|
 |
|
ike
Ранг: Форумен бог
Регистриран на: Пет Фев 04, 2005 9:59 pm Мнения: 6019 Местоположение: София
|
 Re: Проблем с програмиране на Ардуино уно
Как от далеч си личат програмистите за PC. M_I_T_A_K_A а така няма ли да прави същата работа, като остане 1к повече свободен флаш?
_________________ Warriors of the Night, ASSEMBLER!!!
|
| Пет Мар 06, 2015 1:46 pm |
|
 |
|
M_I_T_A_K_A
Ранг: Минаващ
Регистриран на: Чет Апр 22, 2010 11:56 am Мнения: 27
|
 Re: Проблем с програмиране на Ардуино уно
Критиката ти, за мен е градивна вземам си бележка А примера го дадох, защото реших, че е по лесно резултата да е във волтове.
|
| Съб Мар 07, 2015 12:24 am |
|
 |
|
tosho
Ранг: Минаващ
Регистриран на: Сря Мар 04, 2015 4:34 pm Мнения: 12
|
 Re: Проблем с програмиране на Ардуино уно
Благодаря ви за отговорите. В сряда ще го пробвам дали работи и на практика 
|
| Пон Мар 09, 2015 4:25 pm |
|
 |
|
ike
Ранг: Форумен бог
Регистриран на: Пет Фев 04, 2005 9:59 pm Мнения: 6019 Местоположение: София
|
 Re: Проблем с програмиране на Ардуино уно
Няма да работи, защото както s7ama7 каза - това устройство няма хистерезис и ще ти прецака релетата.
_________________ Warriors of the Night, ASSEMBLER!!!
|
| Пон Мар 09, 2015 6:27 pm |
|
 |
|
tosho
Ранг: Минаващ
Регистриран на: Сря Мар 04, 2015 4:34 pm Мнения: 12
|
 Re: Проблем с програмиране на Ардуино уно
В крайна сметка , докато правих опити схемата тръгна (подавах различно напрежение на делителя и релетета си превключваха в границите ,както трябва) Изникна проблем , когато направих цялата постановка .Вместо фотоволтаичен панел сложих зарядно за акумулатор , само че като закача зарядното за акумулатора напрежението се променя на около 16 волта ,а когато го изключа и вкюча товар пада на 10 и всичко се проваля. Тези граници които съм задал предварително : от 11волта да превключва едното реле , а от 12 волта другото , стават безсмислени.
Това е програмата, която ползвах: int analogPin = 3; int RelayPin1 = 5; int RelayPin2 = 6; float val = 0; float R1 = 7500.0; float R2 = 30000.0;
void setup() { pinMode(analogPin, INPUT); pinMode(RelayPin1, OUTPUT); pinMode(RelayPin2, OUTPUT); digitalWrite(RelayPin1, LOW); digitalWrite(RelayPin2, LOW); }
void loop() { val = analogRead(analogPin)*5.0/1024.0; val = val/(R2/(R1+R2)); if (val >= 3 ) { digitalWrite(RelayPin1, LOW); delay(1000); digitalWrite(RelayPin2, HIGH); delay(1000); } else { digitalWrite(RelayPin1, HIGH); digitalWrite(RelayPin2, LOW); } }
|
| Пет Мар 13, 2015 5:14 pm |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 2 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|