Завсегдатай, Кандидат в Советники
|
Акваконтроллер Ардуино... без Ардуино! |
Добрый день, уважаемые любители автоматизации аквариумной жизни. На нашем форуме есть множество тем, посвященных контроллерам на базе Ардуино. В том числе очень познавательная тема ARDUINO для автоматизации аквариума . Ваш покорный слуга тоже не избежал подвига ардуиностроения, о чем честно выложил Простой Arduino-контроллер "чайника" - от макета до готового изделия . Эту тему можно считать прододлжением упомянутой предыдущей. |
|
#2099812 |
Завсегдатай, Кандидат в Советники
|
|
Итак, чем чайника (и меня в том же числе чайников) привлекает ардуино? Да простотой создания программ (скетчей) и простотой их загрузки в память контроллера - включил в USB нажал кнопку. Но мы же знаем, что такое ардуино - это просто микруха Atmega. Можно ли как-то с ней работать, причем в привычной для чайников-ардуинистов программе Arduino-IDE? Можно и очень просто. Но для начала нам все-таки потребуется плата ардуино, причем любая. К меня была свободной ардуино-нано, вот на ее примере и начнем. |
|
#2099831 |
|
Завсегдатай, Кандидат в Советники
|
|
Теперь нужно доработать напильником саму программу ArduinoIDE, чтобы с помощью нее можно было программировать микросхемы Atmega. Для примера я покажу доработки для микрух Atmega8 и Atmega32, с которыми работал сам. Если вам нужно что-то другое, то прочитав тему до конца, вы сможете вполне во всем разобраться. Но вы прекрасно понимаете, что делаете все на свой страх и риск. |
|
#2099856 |
Завсегдатай, Кандидат в Советники
|
|
Но это еще не все. Необходимо загрузить .hex файл для работы с определенной микросхемой. Можно воспользоваться моими готовыми файлами для atmega8 16 Mhz и atmega32 16 Mhz. |
|
#2100147 |
Завсегдатай, Кандидат в Советники
|
|
Поехали дальше. Как присобачить микросхему к плате ардуино? Оказалось, это элементарно. Посмотрим на распиновку любой atmega8, 16, 32. Она одинаковая для всех Подключение питания: +5В на вывод 7 (VCC), а -5В на вывод 8 или 22 (Ground). Далее подключение выводов микрухи к ардуине следующее 1 (Reset) к D10 19 (SCK) к D13 18 (MISO) к D12 17 (MOSI) к D11 Понятно, что подключаем до подсоединения питания. Затем очень важно подключить внешний кварц, я использую 16 МГц. В принципе, микросхемы имеют и свой внутренний кварц, если не ошибаюсь - 1 МГц, но, во-первых, на нем микруха работает медленнее, а во-вторых он менее стабильно держит частоту, поэтому для стабильной работы нужен внешний кварц, он стоит копейки, продается на киллограммы (шутка). Кварц подключается к выводам 9 и 10, а для стабильной работы эти выводы через конденсаторы 22 пФ подключаются к земле (т.е. на -5В). Все это можно проделать и на монтажной плате, но если есть время/навык/терпение, но можно соорудить и постоянный программатор на печатной плате Изменено 17.6.15 автор Дядька-рыбомор |
|
#2100156 |
|
Завсегдатай, Кандидат в Советники
|
|
Итак, мы приготовили программу ArduinoIDE и подключили ардуино к микрухе, а саму ардуину - к компу через USB. (Предварительно не забываем загрузить скечт ArduinoISP на саму ардуину, превратив ее в программатор) Что делаем дальше? |
|
#2100174 |
Завсегдатай, Кандидат в Советники
|
|
Есть еще одно важное свойство микросхем atmega. Это соответствие их выводов (ножек) входам и выходам платы ардуино. Привожу подробно, начиная с первого вывода Atmega. |
|
#2101128 |
|
Свой на Aqa.ru, Кандидат в Советники
|
|
AREF - опорное напряжение аналоговых входов. |
|
#2101129 |
Завсегдатай, Кандидат в Советники
|
|
DrFr Спасибо. Я тоже о нечто подобном читал, но не пользовался. |
|
#2101132 |
Завсегдатай, Кандидат в Советники
|
|
Кстати, вот интересная тема про стабилизацию микросхем Atmel клик |
|
#2101276 Нравится kovit15
|
|
Завсегдатай, Кандидат в Советники
|
|
Итак, собираем комплектующие. |
|
#2101288 Нравится kovit15
|
Свой на Aqa.ru
|
|
Дядька-рыбоморЧестно сказать не понимаю зачем здесь Ардуинка вообще?В качестве програматора-неразумно.Атмеловские микры можно зашить и на обычном програматоре.Ну а если самому софт писать на Си, то ещё и компелятор потребуется.Вообще контроллеры очень хорошие, простые, надёжные и очень удобные в использовании. |
|
#2101365 |
Завсегдатай, Кандидат в Советники
|
|
сообщение Андрей финн Это ключевое слово - "обычном программаторе". Не имея никакого, даже отдаленного отношения к электронике и программированию, я не держу дома ни "обычного", ни какого другого программатора. А вот лишняя ардуинка - имеется. И языкам программирования я не обучен, только в прошлом годе занялся контроллерами ардуино. Так что с точки зрения профи - тема очень даже критикабельная. А для чайноков, которых на форуме больше, надеюсь - полезная. Изменено 21.6.15 автор Daxel |
|
#2101400 |
|
Завсегдатай, Кандидат в Советники
|
|
Андрей. |
|
#2101450 |
Завсегдатай, Кандидат в Советники
|
|
Все комплектующие собраны, схема обкатана в течение нескольких дней на макетке, работала без сбоя во всех режимах. Сегодня развел печатную плату в layout-6, нашел подходящую коробочку и планирую за неделю собрать и запустить контроллер. Есть пара вопросов к знатокам. 1. На плате драйвер MW LDD будет довольно близко расположен по отношению к реле. Возможно ли их взаимное электромагнитное влияние? 2. И такой же вопрос по отношению к конвертеру на LM2596 и драйверу (в конвертере есть индуктивности). |
|
#2101550 |
Свой на Aqa.ru, Советник
|
|
Дядька-рыбомор Всё гораздо проще... В качестве программатора используется компьютерная программа. Наберите в поисковике "Внутрисхемное программирование ATMega". Панелька в этом случае для проца тоже не нужна. |
|
#2103779 Нравится Дядька-рыбомор
|
|
Завсегдатай, Кандидат в Советники
|
|
сообщение e99 Спасибо. Я читал об этом раньше, но мне это дело показалось сложным, поэтому, пообщавшись на форумах ардуинщиков, пошел по пути adruino-as-ISP. Одновременно с конструированием программатора, прикупил на e-bay еще и USBasp программатор, благо стоит недорого. Последний не показал стабильной работы в винде, а в линуксе вообще не заработал. На форумах линуксоидов можно, конечно, найти решение этой проблемы, но как-то руки не дошли. Мой путь представляется проще для меня, т.к. позволяет работать в уже изученной проге arduinoIde, а учиться работать в pony или других подобных просто нет времени. Хотя, я прекрасно понимаю, что мой путь есть некий суррогат с точки зрения настоящего программиста. ЗЫ. А все-таки аквариум замечательное хобби! Никогда не думал, что после возвращения в ряды аквариумистов в 2008 году (после 18-ти летнего перерыва!) мой кругозор расширится до физиологии растений (спасибо Диме "Sebbb"), дизайна (спасибо Наташе Романович из Минска за ее статьи), электроники и программирования (спасибо ZORS) и вообще кучи приятных собеседников на форуме и на птичьем рынке. Это ж какая гимнастика для ума! И дома красотень. Жена сначала приняла аквариумы со скепсисом, а теперь это неплохое украшение интерьера, и гостям всегда интересно (основная реакция на растения - А ОНИ ВСЕ НАСТОЯЩИЕ?!). |
|
#2108055 |
Посетитель
|
|
сообщение Дядька-рыбоморПоясните, пожалуйста, алгоритм работы этих режимов. |
|
#2120740 |
|
Завсегдатай, Кандидат в Советники
|
Исправил ссылки на скетч и схему |
#2333741 Нравится kovit15
|
Малёк
|
Спасибо |
Многие интересуются. Не бросайте это дело! Например мне, ума такое разработать не хватит, а собрать по готовому без проблем. Ещё раз спасибо, ждём ещё разработок. |
|
#2333763 |
Малёк
|
|
Дядька-рыбомор Нормально разомкнутые контакты реле в разрыв питания драйвера - так правильно? |
|
#2333794 |
|
Завсегдатай, Кандидат в Советники
|
|
#2333796 |