Електроника и Електротехника | Electronics and Electrical Engineering > Аналогово управление | Analog Control
Arduino за стрелки
mitko0888:
--- Цитат на: pavel75 link=topic=4987.msg110933#msg110933 date=1520198935 ---Направих го, но ми дава грешка на потъмнения ред:
if (EEPROM.read(0)=0)
--- Край на цитат ---
Направи го
if (EEPROM.read(0)==0)
pavel75:
Митко, Светльо,
страхотни сте. Имате :drinks: от мен. Питал съм много хора, но само тук във форума получих съдействие.
Оправих двойното равно, бях объркал посоките и като го изключа отиваше в другата посока, но смених да е ==1 и нещата заспаха.
Малко по-късно ще направя клипче и ще публикувам кода.
Прави ми впечатление, че като включих тази библиотека му трябва маааалко повечко време за инициализация. За сега не е фатално, но ще видя като станат три машинки дали няма да му трябва доста време.
Като стана въпрос за три машинки, за да им запомня и тяхното положение трябва да е така:
if (EEPROM.read(0)==0) - за първата
if (EEPROM.read(1)==0) - за втората
if (EEPROM.read(2)==0) - за третата
и за ъпдейта:
EEPROM.update(0, 1); - за първата
EEPROM.update(1, 1); - за втората
EEPROM.update(2, 1); - за третата
Нали не бъркам?
svetljjjo:
да ама ще трябва да се дописва целия код на програмата трябва да се добавят променливи и за втори и трети бутон
променливите свързани със положението на сервото също ще трябва да се добавят и за второто и за третото
и всичко това да се добави във целия код надолу в програмата
Защо не ползвате тая програма която изкара VladoC гледах е тя е написана професионално
и е доста по добра
А и не си споменал как ще захранваш ардуиното с кво напрежение с 5в или с нещо между 6 и 12 волта
всяко ардуино има вграден стабилизатор и два входа за захранване
за микро са VCC за 5в и RAW за между 6 и 12 волта
мисълта ми е що не си подсигуриш захранване с кондензатор един голям или няколко по малки вързани успорено
консумацията е малка и един 4700мф ще осигури поне 3 сек за да не се ресетва ардуиното от премигвания на тока
pavel75:
--- Цитат на: svetljjjo link=topic=4987.msg110943#msg110943 date=1520258162 ---да ама ще трябва да се дописва целия код на програмата трябва да се добавят променливи и за втори и трети бутон
променливите свързани със положението на сервото също ще трябва да се добавят и за второто и за третото
и всичко това да се добави във целия код надолу в програмата
Защо не ползвате тая програма която изкара VladoC гледах е тя е написана професионално
и е доста по добра
А и не си споменал как ще захранваш ардуиното с кво напрежение с 5в или с нещо между 6 и 12 волта
всяко ардуино има вграден стабилизатор и два входа за захранване
за микро са VCC за 5в и RAW за между 6 и 12 волта
мисълта ми е що не си подсигуриш захранване с кондензатор един голям или няколко по малки вързани успорено
консумацията е малка и един 4700мф ще осигури поне 3 сек за да не се ресетва ардуиното от премигвания на тока
--- Край на цитат ---
Да, за второто серво, за втория бутон ще се допише. Това няма спор. Там нещата са ми ясни. Не ми беше ясно за тази библиотека, която пази данните.
Тази програма на VladoC е супер, но аз от два месеца се хванах с това и съм супер, мега хипер начинаещ. За това моя код изглежда като за първи клас. По тази причина не можах да се ориентирам добре в програмата на VladoC и не мога да я нагодя за мойта гара. При него се ползват и аналоговите входове, а аз там още не съм запознат. Ако успея да разуча и аналоговите входове на ардуиното ще мога да включвам на едно ардуно по 4 сервота, а не по 3 както е сега. Хубавото на ардуиното, е че след време ако напредна още винаги мога да променя кода.
В момента ардуиното го захранвам със зарядно за GSM. Обаче мисля да го сложа на тази платка, която май си има кондензатор:
https://www.aliexpress.com/item/Free-shipping-NANO-and-UNO-multi-purpose-expansion-board-for-arduino-nano-3-0/32503940168.html?spm=2114.search0104.3.104.27542b20AaSXg5&ws_ab_test=searchweb0_0,searchweb201602_1_10152_10151_10065_10344_10068_10342_10343_10340_10341_10084_10083_10618_10304_10307_10302_5711211_10313_10059_10534_100031_10103_10627_10626_10624_10623_10622_5722411_10621_10620_5711311,searchweb201603_25,ppcSwitch_5&algo_expid=738e151d-f923-4a58-a74b-f015d1fc2fe7-17&algo_pvid=738e151d-f923-4a58-a74b-f015d1fc2fe7&transAbTest=ae803_5&priceBeautifyAB=0
svetljjjo:
Off-Topic: При него се ползват и аналоговите входове, а аз там още не съм запознат. Ако успея да разуча и аналоговите входове на ардуиното ще мога да включвам на едно ардуно по 4 сервота, а не по 3 както е сега. Хубавото на ардуиното, е че след време ако напредна още винаги мога да променя кода.
Виж сега всички пинове на кое да е ардуино са дигитални входно изходни
И почти всички пинове имат и допълнителни функций
на тези които ти смяташ само за аналогови това е допълнителна функция
Примерно А0 е дигитален пин 14 можеш да се обръщаш към него с D14
А1 е D15 и Т.н. до А5 който е D19
Обаче ако искаш да четеш аналогови величини което е само стойности на напрежението от 0 до 5 волта
можеш да го правиш само на аналогови пинове
Това са така наречените хардуерни функций тоест те са вградени в самия чип
Друга допълнителна функция е PWM тя е има само на пиновете 3-5-6-9-10-11
само на тези пинове можеш да напишеш
analogWrite (pin, 127);
и ще получиш правоъгълни импулси с коефицент на запълване от 0 до 100% като напишеш една от стойностите от 0 до 255
примерно 127 са падат 50% ако напишеш пин различен от тея дето имат функцията PWM няма да получиш никви импулси
за това и сервото се атачва на някой от тея пинове
има обаче библиотеки софтуерно PWM а и софтуерно серво които карат всеки пин да стане PWM
друга важна допълнителна функция е RX и TX на пиновете 0 и 1 тs е за комуникация SPI
с тях различни платки могат да обменят информация за това и те рядко ще видиш да се ползват в туториалите
но ти ако искаш можеш да ги ползваш като се обърнеш към тях с D0 и D1
за всяко ардуино има такава картинка и по нея лесно можеш да се ориантираш за всички пинове
Навигация
[0] Списък на темите
Премини на пълна версия