Построение цифровых устройств на ПЛИС — это проектирование на основе использования программируемых логических интегральных схем.
Общие сведения о применении ПЛИС
Сегодня программируемые логические интегральные схемы (ПЛИС) нашли широкое применение при проектировании цифровых систем разного предназначения. Раньше наборы дискретных цифровых логических микросхем разных серий в течение достаточно длительного периода времени выступали в качестве основы элементной базой для реализации цифровых устройств. В составе подобных наборов имеется значительное количество отдельных микросхем, которые выполняют, как основные логические функции, то есть И, ИЛИ, НЕ, так и функции стандартных цифровых устройств, таких как, триггеры, регистры, счетчики, мультиплексорs, дешифраторы и так далее.
Главным недостатком дискретных логических микросхем считается тот факт, что для проектирования конечного продукта, как правило, необходимо значительное количество микросхем, и, как следствие, это предполагает большое число внешних соединений. В итоге увеличивается сложность конструкции, возрастают размеры печатных плат и уменьшается надежность. Необходимо также отметить, что в этом случае очень непросто реализовать устройства, имеющие высокую тактовую частоту. Но часто бывает, что необходимо спроектировать цифровые устройства, которые требуют нестандартных схемотехнических построений и не рассчитаны на крупносерийное производство. В таких случаях считается целесообразным использование ПЛИС.
Использование ПЛИС, обладающих даже средней степенью интеграции, способно заменить обычно около пятнадцати стандартных интегральных микросхем. Причем это позволяет существенно уменьшить габариты устройства, снизить потребляемую мощность и повысить надежность. Еще одним преимуществом применения ПЛИС может считаться резкое сокращение сроков и затрат на проектные работы, а также повышение возможности модификации и отладки оборудования. По этой причине ПЛИС широко используются при проектировании стендового оборудования, на этапе формирования и производства опытной партии новой продукции, а также для эмуляции схем, которые подлежат дальнейшей реализации на иной элементной базе.
На основе ПЛИС часто реализуются микропрограммные автоматы, которые позволяют использовать передовые алгоритмы обработки сигналов, а именно:
- Алгоритмы, реализующие цифровую фильтрацию, включая алгоритмы нелинейной, оптимальной, адаптивной фильтрации и другие.
- Алгоритмы, базирующиеся на использовании ортогональных преобразований, к примеру, на быстром преобразовании Фурье.
- Алгоритмы, которые реализуют процессы кодирования и декодирования, а также модуляторы и демодуляторы, включая предназначенные для сложных сигналов, таких как, псевдослучайные, хаотические и прочие.
- Алгоритмы, реализующие различные интерфейсы и стандартные протоколы обмена и трансляции данных.
- Алгоритмы, предназначенные для уплотнения телефонных сигналов в технике связи.
Построение терморегулятора на основе ПЛИС
В общем случае проектирование цифровых схем на основе ПЛИС состоит из следующих основных этапов:
- Этап выбора ПЛИС, которая позволяет сформировать требуемую схему исходя из ее объема и быстродействия.
- Этап разработки схемы и ее ввод при помощи специального языка или универсального схемного редактора.
- Этап моделирования схемы для проверки правильности ее функционирования.
- Этап размещения схемы на кристалле и организация связей.
- Этап трансляции введенной схемы в битовую последовательность.
- Этап загрузки этой последовательности в кристалл, то есть, осуществление программирования ПЛИС.
Терморегулятором или термостатом является устройство, предназначенное для работы в системах регулирования внутридомовых сетей отопления с целью поддержания заданной температуры внутреннего воздуха. В качестве ПЛИС может быть использован модуль Arduino, который способен превратить термостат в «умное» устройство, контролируемое и управляемое пользователем на расстоянии через Wi-Fi и смартфон.
Термостат на Arduino может быть создан на основании готовой модели от сообщества программистов MySensors. Это сообщество разработчиков аппаратного программного обеспечения, имеющего открытый исходный код, которое занимается конкретно созданием бытовой автоматики. Проект способен помочь домашним мастерам в создании своих «умных устройств», при этом не уделяя большое количество времени и усилий на самостоятельное проектирование новых систем управления и программного обеспечения.
Сердцем «умного» термостата может стать Arduino Nano, которое является не очень большим, завершенным устройством, удобным для формирования программируемого макета с высококачественной платой, функционирующей на микроконтроллере Atmega328P-AU. Arduino Nano применяет технологию Immersion Gold, поддерживает загрузки ISP, USB и питание через USB, при этом ничего не нужно паять.
При создании терморегулятора еще будет необходим модуль приемопередатчика NRF24L01 Arduino NRF24L01. Энергопотребление данного модуля при передаче сигнала равняется примерно 12 мА, что даже ниже, чем потребляют светодиоды. Для того чтобы собрать схему, необходимо иметь также соединительные кабели Aukru для Arduino Raspberry Pi.
Датчиком температуры и влажности может служить цифровой модуль SODIAL (R) DHT22 AM2302 для Arduino Raspberry DIY, у которого есть отверстия для крепежного винта, поэтому он может быть удобно установлен и зафиксирован в любом комплекте. Он имеет цифровой выходной сигнал с одной шиной, и возможностью двунаправленного обмена данными. Рабочее напряжение составляет 5,5 В постоянного тока, а рабочий диапазон температур простирается от -40 до 80 °С, при точности измерения +/- 0,5 °С.
Схема подключения и программный код каждого термостата Arduino могут незначительно отличаться. Следует выполнить адаптацию программных и аппаратных параметров к потребностям конкретной тепловой сети.