Алгоритм работы резидентной программы
-
- Сообщения: 5
- Зарегистрирован: 08 июн 2017, 19:11
Алгоритм работы резидентной программы
Доброго времени суток, Эдуард! Пытаюсь модифицировать и просто поиграться со схемой вашей нашумевшей разработки. Подошел к самой, пожалуй, жуткой части, а именно программированию микроконтроллера PIC18F2520. Поскольку непосредственный поиск тех или иных строк кода для конкретных операций труда не составляет, хочу узнать, в силу слабой способности к алгоритмизации, можете ли вы дополнить тему с регулятором температуры блок-схемой алгоритмом резидентной программы для того самого пика? Многим, думаю, будет тоже, как просто интересно, так и полезно для освоения программирования подобных устройств :}
Re: Алгоритм работы резидентной программы
Здравствуйте!
Там черт ногу сломит.
В этой разработке, в алгоритме явно есть лишняя функция. Я реализовал стабилизацию пульсаций источника питания частотой сети (100 Гц). Это было сделано для возможности питания устройства от простого не стабилизированного источника питания - трансформатор, диодный мост, конденсатор. Функция требует много вычислительных ресурсов. Реализован быстрый регулятор напряжения со временем дискретизации 80 мкс. Но практически в этом нет необходимости, т.к. обычно контролеры питают от импульсных стабилизированных источников. Тем более, что такие блоки питания постоянно дешевеют. Очевидно этому способствует широкое использование 12 вольтовых источников для питания светодиодных лент.
Программа контроллера написана на Ассемблере. Это вторая причина, по которой алгоритм программы сложный и запутанный. На Ассемблере нет вычислений с плавающей запятой. Поэтому все вычисления происходят в формате с фиксированной запятой. Если интересно, я писал по этому вопросу на форуме. Почитайте и вы поймете, насколько проще программировать с использованием плавающей запятой.
Если нет необходимости в стабилизации пульсаций источника питания, то для реализации контроллера вполне хватает ресурсов простой платы Ардуино, например, Arduino Nano. Даже с использованием вычислений с плавающей запятой.
В уроках Ардуино я провел разработку такого контроллера. Я показал, как разрабатывается аппаратная часть, поэтапно писал программу.
Программа в Ардуино легко меняется, дорабатывается. Мне кажется, я описал все очень подробно, в том числе и алгоритм. Разработал программы верхнего уровня для настройки контроллера.
Почему вы не хотите воспользоваться алгоритмом этой разработки? Тем более, что в принципе алгоритмы ничем не отличаются. В обеих разработках реализованы регуляторы мощности и температуры.
Там черт ногу сломит.
В этой разработке, в алгоритме явно есть лишняя функция. Я реализовал стабилизацию пульсаций источника питания частотой сети (100 Гц). Это было сделано для возможности питания устройства от простого не стабилизированного источника питания - трансформатор, диодный мост, конденсатор. Функция требует много вычислительных ресурсов. Реализован быстрый регулятор напряжения со временем дискретизации 80 мкс. Но практически в этом нет необходимости, т.к. обычно контролеры питают от импульсных стабилизированных источников. Тем более, что такие блоки питания постоянно дешевеют. Очевидно этому способствует широкое использование 12 вольтовых источников для питания светодиодных лент.
Программа контроллера написана на Ассемблере. Это вторая причина, по которой алгоритм программы сложный и запутанный. На Ассемблере нет вычислений с плавающей запятой. Поэтому все вычисления происходят в формате с фиксированной запятой. Если интересно, я писал по этому вопросу на форуме. Почитайте и вы поймете, насколько проще программировать с использованием плавающей запятой.
Если нет необходимости в стабилизации пульсаций источника питания, то для реализации контроллера вполне хватает ресурсов простой платы Ардуино, например, Arduino Nano. Даже с использованием вычислений с плавающей запятой.
В уроках Ардуино я провел разработку такого контроллера. Я показал, как разрабатывается аппаратная часть, поэтапно писал программу.
Программа в Ардуино легко меняется, дорабатывается. Мне кажется, я описал все очень подробно, в том числе и алгоритм. Разработал программы верхнего уровня для настройки контроллера.
Почему вы не хотите воспользоваться алгоритмом этой разработки? Тем более, что в принципе алгоритмы ничем не отличаются. В обеих разработках реализованы регуляторы мощности и температуры.
-
- Сообщения: 5
- Зарегистрирован: 08 июн 2017, 19:11
Re: Алгоритм работы резидентной программы
Полазил по комментариям и запутался еще сильнее :С
Сам алгоритм у вас есть в виде блок схемы? (Хотя бы ручкой на листке. Очень хочется хотя бы попробовать разобраться в нем.) :}
Сам алгоритм у вас есть в виде блок схемы? (Хотя бы ручкой на листке. Очень хочется хотя бы попробовать разобраться в нем.) :}
Re: Алгоритм работы резидентной программы
Я не понял алгоритм устройства на PIC контроллере или на Ардуино?
В обоих случаях общий алгоритм регуляторов изображен в основных окнах программ верхнего уровня. А для Ардуино есть детальные алгоритмы в уроках 36-44.
В обоих случаях общий алгоритм регуляторов изображен в основных окнах программ верхнего уровня. А для Ардуино есть детальные алгоритмы в уроках 36-44.
-
- Сообщения: 5
- Зарегистрирован: 08 июн 2017, 19:11
Re: Алгоритм работы резидентной программы
Интересует алгоритм резидентной программы для микроконтроллера PIC в составе контроллера для холодильника на элементе Пельтье :}
Re: Алгоритм работы резидентной программы
У меня нет алгоритма для этого устройства. Алгоритм регуляторов такой же, как для контроллера на Ардуино. В уроках очень подробно все описано. Что не понятно, я объясню.
-
- Сообщения: 5
- Зарегистрирован: 08 июн 2017, 19:11
Re: Алгоритм работы резидентной программы
Начиная с какого урока стоит обратить внимание на алгоритмы регуляторов на Ардуино?
Re: Алгоритм работы резидентной программы
Почитайте с 36 урока.
-
- Сообщения: 5
- Зарегистрирован: 08 июн 2017, 19:11
Re: Алгоритм работы резидентной программы
А с помощью какого программного средства или среды была создана программа на ассемблере для микроконтроллера PIC?
Re: Алгоритм работы резидентной программы
Стандартный пакет MPLAB IDE.
Вернуться в «Программирование Ардуино»
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей