Вольтметр и индикатор температуры паяльной станции.
- Войдите на сайт для отправки комментариев
Добрый день!Вопрос от новичка- решил собрать паяльную станцию с двухполярным бп до 40в.С аналоговой частью всё ОК, но начитавшись интернетов ,решил что светодиодная линейка на лм3914, (для термометра, хотя он уже настроен на макетке)для 21 века слишком просто.Ну а интернеты дали решение посложней( а для меня космос)-Ардуино
На питающем трансформаторе есть две лишние обмотки по 40в.Ну а так как лишнего ничего не бывает- решил запилить бп на 40+40 в.
Вопрос - насколько осуществимо для новичка собрать- два вольтметра и индикатор температуры из набора-
Arduino Pro Mini 5В 16МГц ATMega328,
LCD дисплей 16x2 с синей подсветкой,
I2C модуль для расширения выводов Arduino для подключения LCD дисплея на PCF 8574T?
В идеале было бы - вольтметры и амперметры для бп, ну и само собой индикатор температуры для паяльной станции.
По поводу делителей на аналоговых входах уже читал, там на вход 5в.Питание 5в тоже обеспечу, может ещё что?
усилители шунта на оу соберу и откалибрую .
Ну и напоследок- насколько я понимаю самое сложное будет программа.В этом я не силён, хотя опыт есть, в начале 90х был у меня советский ''компьютер'' на вм80 процессоре, и написав программу на бейсике, я таки заставил лететь самолётик на экране телевизора. А потом комп сдох , и я так и не стал программистом.
Ну и напоследок- насколько я понимаю самое сложное будет программа.В этом я не силён
по опыту последних дней - думаю самое сложное будет внятно обьяснить, что вы хотите от форума и не посраться при этом с местным сообществом.
и я не вполне понимаю, зачем два дисплея и расширитель плртов...
Дисплей 16 символов , 2строки-название дисплея скопировал в интернет магазине.э расширитель чтоб меньше проводов от контроллера до дисплея, но можно и без него.
Вопрос в том что обладание минимумом знаний в программной среде, осилю ли программу для ардуино.
Для меня это вызов, ну и двух своих пацанов приобщить хочу.Ну чтоб программирование у них ассоциировалось не только с ютубом и тиктоком....
Вопрос в том что обладание минимумом знаний в программной среде, осилю ли программу для ардуино.
Ничего невозможного нет. Было бы желание и усердие. С++ достаточно простой язык, если внимательно изучить хотя бы до половины книгу Шилдта (например). Главное, не повторять фатальную ошибку большинства новичков, не лезть сразу с вопросами, ответы на которые русским по белому написаны в на первых страницах вышеуказанной книги)).
и я не вполне понимаю, зачем два дисплея и расширитель плртов...
:) Я думаю это не расширитель портов, а модуль I2C .
А 2 дисплея может быть чтобы одновременно видеть несколько показаний?
(не переключаясь между экранами)
Спасибо Румата за наводку!В интернатах масса литературы по ардуино, ни не охота бить по площадям, лучше конкретно от знающих спросить.
И я люблю читать Ефремова...
Да этот модуль..
Экран один-два 2строки по16 символов
В интернатах масса литературы по ардуино
читать надо не про ардуино. а в первую очередь про язык С++. Книжки по ардуино (если они не совсем для чайников) - предполагают умение программировать на С/С++
Вот и я об этом - масса , а теперь знаю что в первую очередь.
А вообще вопрос - аппаратная часть подойдёт для моих целей?
В интернатах масса литературы по ардуино,
Я, когда 2 года назад только начал этим заниматься, набрал сдуру книжек по ардуино. Так ни одной и не открыл, в итоге. Зато С++ Шилдта зачитал до дыр за это время. По конкретно ардуино вам потребуются даташиты и пинауты на конкретные платы, с которыми будете работать и даташиты на периферию, но это удобнее всего брать в гугле
Спасибо за ответы!Уже знаю с чего начинать-с++ , и Шилдта поищу.С железом думаю будет проще.
Тему не закрываю, платы приедут и вопросы возникнут сами собой.
А пока едут последний вопрос- реально ли измерять 5 разных напряжений описанным контроллером?(
Arduino Pro Mini 5В 16МГц ATMega328),в описании прочитал про 8 аналоговых входов.А мерить нужно два вольтметра , два амперметра и напряжение с термопары паяльника.
А пока едут последний вопрос- реально ли измерять 5 разных напряжений описанным контроллером?(
Arduino Pro Mini 5В 16МГц ATMega328),в описании прочитал про 8 аналоговых входов.А мерить нужно два вольтметра , два амперметра и напряжение с термопары паяльника.
вы пишете про "пять разных напряжений", а на деле у вас три напряжения и два измерения силы тока. Непостредственно ардуиной померить силу тока вряд ли получиться. нужно добавить дифференциальную схему на ОУ, а лучше - внешний АЦП типа ADS1015/1115
Вот, что я думаю - вольтметр и амперметр (2 штуки) - это две строки. Например показывают постоянно. Температуру паяльника - при её смене и пару секунд после, чего на неё смотреть? Ну по желанию - кнопка, чтобы принудительно посмотреть. Смысла в 2-х дисплеях не вижу.
Про амперметр- мерить нужно напряжение с усилителя шунта на оу, собирал такие для бп и электронной нагрузки, правда показания отображаются на вольтметре с семисегментным индикатором, ну а вообще-то это скорее показометр, потому что ''шкала'' нелинейная и не очень точная.
Так там и не должно быть два дисплея, это дисплей 2строки по 16 символов.
Задача- 2 вольтметра( двухполярный бп) и градусник паяльной ст.Если возможно с этим контроллером то ещё 2 вольтметра для амперметров.
В описании платы прочитал про 8 аналоговых входов, вопрос в том будет ли она читать 4 меняющихся (5) напряжения, или это вопрос программирования?
Sándor73, если Вы решили освоить Ардуино, то тот проект, который Вы сейчас пытаетесь обсуждать, придется отложить на некоторое время. По крайней мере, на полгодика. И собрать за это время 3-4 проекта попроще. И, собственно, при работе над этими проектами и найдете ответы на вопросы, которые сейчас задаете. Пока Вам они не нужны. Разумеется, при условии, что в приоритете у Вас именно разобраться с Ардуино. Ну а если приоритет на обсуждаемом проекте, то решение будет совсем другим - обратиться в платный раздел "Ищу исполнителя".
Другими словами, Ваш сегодняшний уровень и уровень сложности проекта несовместимы. Определитесь с приоритетами, чтобы мог быть предметный разговор.
Andriano- спасибо за ответ и совет!
Приоритет освоить Ардуино.
Я уже понял что начать нужно с изучения с++, а аппаратной частью проблем не будет , почти всё знакомо.
Ну а первым проектом будет одноканальный вольтметр - описание встречал в инете.Если срастется продолжу дальше!
Приоритет освоить Ардуино.
1 ) не хвататься за все сразу, разбить задачу и решать ее поступательно
2) подобрать и повторить несколько проектов, не пытаться при первом затыке писать на форум - "ПАМАгите!!!"
3) при работе с АЦП есть плохо и редко описанный нюанс, вернее он редко замечается пользователями - чаще всего первое преобразование АЦП имеет большую ошибку и его в большинстве случаев игнорируют, сразу после первого преобразования делают второе - его принимают за истину. (это на далекое будущее, запомните- хорошо, а нет так может и не потребуется)
4) никогда не доверять Гиверу, если начинаете изучать ардуино - лучше в первое время вообще игнорить его сайт и примеры. Там куча ошибок, которые новичек не поймет и не оценит, а потом будет плакать. На этом сайте его не любят, на вопросы он не отвечает. " Чукча писатель, чукча не читатель"
5) в среде ардуино есть примеры, базой являются два блинка "Blink" и "Blink Without Delay" - можите начинать их читать и разбираться за каждую букву.
6) типы данных (начинать смотреть тут, ну и гуглом пользуемся) - как букварь, все просто и без понимания этого шагу не сделаете.
PS - "оператор goto" - никогда его не использовать!!! учиться писать программу, чтоб даже желания его применить не было. Запомнить, что он есть, никогда не использовать его и избегать подобных конструкций от слова ВООБЩЕ.
PS - "оператор goto" - никогда его не использовать!!! учиться писать программу, чтоб даже желания его применить не было. Запомнить, что он есть, никогда не использовать его и избегать подобных конструкций от слова ВООБЩЕ.
Не учи детей плохому. В некоторых случаях именно goto позволяет не писАть "спагетти" код. Хотя, до осознания этого, ТС-у еще года три.
PS - "оператор goto" - никогда его не использовать!!! учиться писать программу, чтоб даже желания его применить не было. Запомнить, что он есть, никогда не использовать его и избегать подобных конструкций от слова ВООБЩЕ.
Не учи детей плохому. В некоторых случаях именно goto позволяет не писАть "спагетти" код. Хотя, до осознания этого, ТС-у еще года три.
так я так и написал, когда дозреет тогда и... у него "ТС-у еще года три" просто не будет таких кодов, а если и появятся, то это скорее всего будет заблуждение, а вот отхватить проблем с goto можно прямо на старте.
UPD. ИМХО 99% проблем как избавиться от goto решается флагами, вот про них чуть позже, когда дело дойдет до практики. Может простыня будет и несколько больше чем с goto - но читать и понимать логику работы будет проще, особенно новичку. ИМХО (ранее уже спорили в отдельной ветке, много и долго) goto в СИ это почти костыль и его нужно избегать до последнего, ну или быть сильно просветленным.
А я бы советовал начинать с примеров. Вот есть у вас LCD - поигрались на примерах из IDE. Затем следующее. Только разбираться так, что бы всё было понятно. А что не ясно - гуглим, читаем книжки. Затем комбинируем - добавляем кнопки, светодиоды, АЦП... Потому что теория, без практики, не очень хорошо усваивается.
матри. Реальный код(мой) чтения даччика AM2320. Когда на каком-либо этапе происходит ошибка, нет смысла продолжать дальнейшее, проще выйти по ошибке. Если писать структурно, как Дейкстра завещал, запутаешься в условиях и фигурных скопках.
матри. Реальный код(мой) чтения даччика AM2320.
хороший пример :) вот только 99% новичков стараются "ускорить" выполнение кода и без ума и памяти начинают им злоупотреблять. Пусть новичок сперва с логикой подружится. ИМХО goto хорош к месту, только мало кто понимает его место, а новички вообще ничего не понимают и лучше запретить, чем потом писать пространные посты о тупизме алгоритма работы.
Гриша-
1 ) не хвататься за всё....
- Да это я понял.Поэтому паяльник будет с линейкой на лм3914, а на Ардуино учусь мигать светодиодом.
матри. Реальный код(мой) чтения даччика AM2320. Когда на каком-либо этапе происходит ошибка, нет смысла продолжать дальнейшее, проще выйти по ошибке. Если писать структурно, как Дейкстра завещал, запутаешься в условиях и фигурных скопках.
да лан, ты просто структурно мыслить не умеешь :)
Вот те твой код без go_to, без дополнительных условий и фигурных скобок. В качестве дополнительного бонуса теперь по возвращаемому значению сразу понятно, отработала функция верно или завершилась ошибкой
Если ты заметил, функция обьявлена как override и возвращать по своему хотению уже ничего не может, не описано это в предке. Ну и да, если бы тут работали исключения, ес-сно, я бы их в полный рост применял, с ними код проще и понятней, но поелику их нет, то ненависный всеми goto в помощь мне и читабельности. Каждый инструмент полезен по-своему, даже если это первобытный грузик на веревочке, вертикаль он отмечает так же верно, как и тысячи лет назад.
Если ты заметил, функция обьявлена как override и возвращать по своему хотению уже ничего не может, не описано это в предке.
всей разницы - только заменить return error на просто return;
Все остальное в силе. Go_TO не нужен.
Не нужен, да. А мне нраица, Фортран вспоминается, первая лубофь. :)
Кстати, у меня такую же идиосинкразию вызывают returns в беспорядке разбросанные по всей функции. А уж если они еще и в экран не входют при просмотре, я прям бесюсь. :)
даже если это первобытный грузик на веревочке, вертикаль он отмечает так же верно, как и тысячи лет назад.
вот вот, правда у меня для антенны на 1300Мнz был в мачту вбит гвоздик и на нём висело ножовочное полотно, оно и показывало вертикаль (горизонталь) антенны, фиксировалось резинкой на мачте )))
Снова продолжение старой песни... Вы уже прекрасно понимаете, что и как делать и когда можно а когда не нужно. Для новичков есть LOOP и флаги перехода, вот как наступит просветление, тогда и goto можно будет, а на старте его нужно избегать (запретить)... у новичков и без этого раздрай с логикой, элементарное ветвление функции вызывает взрыв мозга. У новичка код должен быть линейным (в идеале) и тем боле без перекрестных ссылок, к чему часто приводит goto.
все, я согласен, запретить здесь упоминание goto к чертям собачим, и выдавать лицензию на использование только после получения корочек.
Я конечно дико извиняюсь , но на сколько я понял это вы о чём то своём?
Просто я не очень понял о чём вы!:-):-):-)
мы потрем потом весь offtop
А все остальное понял?
Ага ! Но сначала попробую светодиодом помигать
Я конечно дико извиняюсь , но на сколько я понял это вы о чём то своём?
Просто я не очень понял о чём вы!:-):-):-)
ну могли бы и посмотреть для интереса, это не секретная информация - посмотрите и не используйте.
Да! Посмотрел и вспомнил!Я уже писал что был у меня ''комп'' на кр580вм80 микросхеме, и мне удалось запустить самолётик на телике,
Так вот там была простейшая программа на БЕЙСИКЕ, и я для чего-то использовал goto, толи для стрельбы, а может для полёта облаков.Но с тех пор прошло много времени, и даже книгу по бейсику где то давно просрал.
[quote=andriano]
Sándor73, если Вы решили освоить Ардуино, то тот проект, который Вы сейчас пытаетесь обсуждать, придется отложить на некоторое время. По крайней мере, на полгодика. И собрать за это время 3-4 проекта попроще......
Прошло 2месяца после первой попытки врубиться в Ардуино, ну и сейчас попробую поделиться впечатлениями и может получить от форумчан какие-то новые наставления...
С тех пор я получил от наших маленьких китайских друзей модуль про мини на Атмега168pa 5 в 16 мГц(вавгат).С этим модулем в Arduino IDE 1.8.13 я не смог добиться ничего, кроме того что понял что IDE не видит контроллер из-за буквенного индекса " pa" ,всё что у меня получилось это стереть установленный блинк, но не в IDE, а в аврдуде,так что этот модуль оставил больше вопросов чем дал ответов...
Следующий модуль куплен в харьковском интернет-магазине, это Ардуино про мини на Атмеге328 5в 16мГц - тут у меня получилось прописать блинк и даже менять скорость моргания светодиода.Вдоволь на моргавшись я смог изменить блинк так , что светодиод заморгал сигналом SOS.
После этого я подключил дисплей 1602 и загрузив Hello world с какого-то сайта , смог изменить скетч так что дисплей приветствовал жену и детей , причём надпись бегала влево право и останавливалась на несколько секунд.Это получилось благодаря другому скетч с бегущей строкой.Правда всё это делалось как-то интуитивно, без осбого понимания того что вижу на С++.( кое что конечно понял - напр. delay итд.)
Следующий скетч ( ну конечно не мной написанный, а с какого-то сайта) это ''цифровой вольтметр''.Тут тоже всё заработало , хотя скетч был с ошибками, но благодаря IDE и подсказкам из гугля, я смог каким-то чудом исправить ошибки , и вольтметр заработал!
Ну а верхом совершенства , на сегодня стал ( конечно собранный из готовых с разных сайтов) скетч ''бегущая строка'' с моими изменениями , о которых я уже писал, и ''цифровой вольтметр''.Работает он так- сначала бегает приветствие, а потом показывает измерянное напряжение.
Повторюсь - всё получалось как-то интуитивно.
Ну и пару вопросов- может кто подскажет можно ли что-то сделать с вавгатовской атмегой168ра или кто безполезный хлам?
Нормально ли для начинающего Ардуинщика интуитивно работать с IDE , или нужно с начала заучить что-то изС++, ?( под интуитивно я имею ввиду работать с IDE как с иностранными словами- что не понимаю ищу в словаре, где-то даже методом научного тыка!)
А я бы советовал начинать с примеров. Вот есть у вас LCD - поигрались на примерах из IDE. Затем следующее. Только разбираться так, что бы всё было понятно. А что не ясно - гуглим, читаем книжки. Затем комбинируем - добавляем кнопки, светодиоды, АЦП... Потому что теория, без практики, не очень хорошо усваивается.
Благодаря Вашему совету у меня получилось всё выше перечисленное!Но повторюсь всё как-то интуитивно , без понимания , как разговаривать с англичанами , присутствовав на уроках английского языка!
Вопрос в том что обладание минимумом знаний в программной среде, осилю ли программу для ардуино.
Ничего невозможного нет. Было бы желание и усердие. С++ достаточно простой язык, если внимательно изучить хотя бы до половины книгу Шилдта (например). Главное, не повторять фатальную ошибку большинства новичков, не лезть сразу с вопросами, ответы на которые русским по белому написаны в на первых страницах вышеуказанной книги)).
Спасибо за наводку на Шилдта, книгу скачал, к сожалению бумажную пока не могу приобрести.
О книге пока что могу сказать - ''было очень интересно, но я ничего не понял''(с)
Думаю по мере продвижения буду больше понимать что читаю, ну и конечно нужен бумажной экземпляр! С монитора в время работы с Ардуино очень не удобно искать подсказки в книге!
Нормально ли для начинающего Ардуинщика интуитивно работать с IDE , или нужно с начала заучить что-то изС++, ?
Для ардуинщика - это норма :) А для нормальной работы с контроллером не очень. Ваша интуиция очень быстро закончится, как только столкнетесь с задачей чуть сложнее, чем буквы HELLO WORLD в чужой готовой строке поменять на HELLО ЖЕНА. Так что, как завещал В.И. Ульянов...
Нормально ли для начинающего Ардуинщика интуитивно работать с IDE , или нужно с начала заучить что-то изС++, ?
Для ардуинщика - это норма :) А для нормальной работы с контроллером не очень. Ваша интуиция очень быстро закончится, как только столкнетесь с задачей чуть сложнее, чем буквы HELLO WORLD в чужой готовой строке поменять на HELLО ЖЕНА. Так что, как завещал В.И. Ульянов.
[quote=Rumata]
Под интуитивно я имею ввиду подсказки об ошибках IDE , которые я перевожу через транслейт, и исходя из переведённого ищу в гуголе ответы, сложность в том что пока найду ответ, уже забыл с чего начинал.Короче куча путаницы.Ну я имею ввиду непонятную во многом тех. терминологию, итд.
Короче язык с++ без практики не выучить, а практиковать без знания языка не получится....вот такая дилеммочка!
Это не дилемма, для решения таких затруднений есть курсы программирования и прочие учебные программы. На этих курсах процесс обучения отлажен и поступателен (должен быть, как минимум у хорошего преподавателя). А при самостоятельном обучении оно так и будет - и это неизбежно...
есть моменты:
1) знание языка программирования - это написали и учли.
2) знание схемотехники - очень полезный навык, его нужно развивать
3)знание устройства МК с которым работаешь - есть ДШ (datasheet) на atmega328 это больше 1000 листов на аглицком.
4) логика - некоторым просто не хватает логики, полное нарушение причинно-следственных связей в коде программы и схеме.
все эти пункты связаны, завязаны и исключить их не представляется возможным ни на одном из этапов... разве только чего добавить можно...
ЗЫ готовьтесь чего-нибудь спалить, это тоже неизбежно :))) и у более опытных спецов проколы случаются и дымок покидает свое место в деталях приводя их в негодность.
Спасибо за советы!
По курсам - вряд ли у меня это получится( семья, время ...итд)
О неизбежности- это меня обнадёжило, ведь не все заканчивали курсы , а раз один смог то сможет и другой!
По моментам: 1) понятно что не очень понятно...
2) кое-что знаю, и всегда развиваюсь.
3) это будем посмотреть, микроконтроллеры для меня довольно не знакомы.
4) по логике- логика в программной части будет после понимания основ языка.
Ну а дым горелых деталей навевает воспоминания о первых блоках питания на твк110лм , когда перепутал первичку со вторичкой, какие красивые фейерверки были...:-) кстати старшего сына заражал радиолюбительством сжигая микрухи на каких-то ненужных платах:-)
Ну и последний вопрос- возможно ли подружить вавгатовскую атмегу168ра с IDE, так как IDE ее не видит из за буквенного индекса ''ра''.То есть IDE даёт ошибку - что выберите правильный контроллер.Всё перепробовал , ничего не получилось, кроме как удалить прошитый с завода блинк, и то в программе аврдуде, а это мне вообще темный лес!
Ну и всем спасибо за ответы!
Для Вашего проекта вполне достаточно всего что что есть в пределах данного сайта и при желании дня через два у Вас уже будет что-то работать
Плата с Atmega168pa прошилась благодаря ссылке с какого-то сайта, уже и не найду какого.
Вот фото - может кому поможет.Ссылку которая в настройках потом выложу с компа.Фото с екрана не очень-то хороши.
меня всегда умиляло это "выкладываю, вдруг кому поможет" и дальше либо абсолютно нечитаемые фото без пояснений. либо безумно кривой код, который если кому и пригодится. то исключитесльно как пример "как не надо делать"...
И что самое печальное, такое сплошь и рядом.( Кто то чего то наговнокодил и на всеобщее обозрение. Ни стыда, ни совести.( Чем гордится? Кому от этого польза? Стыдоба да и только.(
Так написано что выложу ссылку с компа потом, это значит что сейчас не могу, так как нет под рукой компа , только планшет с фото...
А может и правда поможет, кому-нибудь. Не все здесь такие продвинутые как вы. Ничего полезного сами выложить не можете, но с критикой тут как тут. Дибильный какой то форум.