Микроконтроллеры с поддержкой Wi-Fi
С развитием Интернета вещей важной тенденцией является интегрировать все больше и больше функций в один чип, а не в несколько отдельных интегральных микросхем, поскольку это обеспечивает более низкие затраты, снижает риск ошибок проектирования, уменьшает занимаемую площадь. Отличный пример представляет собой микроконтроллер Wi-Fi, который объединяет в одном чипе беспроводную связь Wi-Fi, процессор и схемы ввода-вывода, необходимые для различных устройств. Из-за этой дополнительной сложности при разработке необходимо учитывать множество факторов, чтобы сделать оптимальный выбор.
Выбор МК с поддержкой Wi-Fi
Сейчас на рынке доступны недорогие коммуникационные модули Wi-Fi, которые можно подключить к микроконтроллеру, но это часто означает жертвование для них периферийной схемой, такой как UART, и занятостью контактов. То есть выбрать лучший MCU, когда требуется Wi-Fi, сложно и рискованно, поскольку необходимо обеспечить хорошее качество связи, а также эффективные функции, которые предлагает контроллер. Очевидно, что микроконтроллер является наиболее ответственной частью этого продукта, поэтому все конструктивные соображения должны начинаться с определения его производительности и необходимых ключевых функций, так как замена чипа на другой обычно требует перепроектирования аппаратной части и переписывания программного обеспечения.
АЦП является одним из самых недооцененных периферийных блоков при выборе микроконтроллера Wi-Fi, несмотря на то что это первый и наиболее важный компонент обработки аналогового сигнала. Это означает, что его производительность определяет параметры всей схемы. Поэтому важно понимать его ключевые свойства и знать, чего от него ждать.
Одним из первых параметров, на который обращают внимание разработчики, является количество бит энкодера (разрешение). На практике реальное количество бит в конвертере меньше заявленного, а иногда разница даже существенна. Здесь более важным является эффективное число бит (ENOB), с которым АЦП выполняет преобразование. Данное значение меньше, чем указано в техпаспорте, но чем более схоже ENOB и разрешение указанное в спецификации, тем лучше АЦП преобразователь. Очевидно, что чем меньше бит используется при преобразовании, тем менее точным является представление аналогового сигнала в цифровом виде.
Кроме того, как и все остальные элементы схемы, АЦП также добавляют к сигналу что-то нежелательное, негативно влияющее на качество выходного цифрового потока, включая ошибки квантования и синхронизации, а также смещения, усиления и линейности. Также АЦП чувствительны к большим колебаниям температуры, что характерно для промышленных сред, где работают приложения IoT.
Поэтому важно связаться с производителями предварительно выбранных моделей микроконтроллеров для определения ENOB для встраиваемых АЦП, тонкой настройки поведения при больших колебаниях температуры, определения линейности и точности. Такие данные не включаются в документацию, эта информация предоставляется по запросу.
Доступные периферийные схемы
Все микроконтроллеры с Wi-Fi поддерживают как минимум несколько стандартов интерфейсов связи, поэтому предполагается, что в создаваемом устройстве достаточно того, что есть. Разработчики часто сожалеют об этом позже, когда пытаются использовать тот же микроконтроллер в другом проекте для использования существующего программного обеспечения. Чаще всего это проблема для разработчиков промышленных IoT-систем, поскольку на большинстве производственных предприятий имеется широкий спектр станков и контроллеров, созданных в разное время разными производителями.
По мере роста системы и ее сложности, вероятно потребуется больше интерфейсов и периферийных устройств. Также может наступить время, когда потребуется предоставить такие функции, как сенсорный интерфейс и поддержка ЖК-дисплея. Многие свободные линии GPIO позволят подключить больше реле, переключателей и других компонентов без каких-либо специальных мер, связанных с необходимостью совместного использования контактов. По этой причине доступные интерфейсы в выбранной компоновке должны включать Ethernet MAC, USB, CAN, CAN-FD, SPI, I2C, SQI, UART и JTAG (не помешает и поддержка сенсорного дисплея), чтобы обеспечить практически любой будущий сценарий проектирования.
Безопасность внутри микроконтроллера
Обеспечение безопасности имеет важное значение в любом устройстве IoT, но в промышленной сфере это имеет решающее значение, поскольку потеря контроля над одним блоком IoT может поставить под угрозу работу всего объекта или даже предприятия. Первый барьер, обеспечивающий надлежащий уровень защиты, создается встроенным криптографическим механизмом содержащимся в MCU, который выполняет последовательное или параллельное шифрование и аутентификацию связи. Доступное шифрование данных должно быть совместимым с AES и позволять использовать ключи длиной до 256 бит, а также DES и TDES. Аутентификация должна включать SHA-1 и SHA-256, а также MD-5.
Поскольку каждый поставщик облачных услуг работает со своим собственным сертификатом и криптографическими ключами, подготовка устройства является сложной задачей, требует значительных знаний в области криптографии и выступает одной из самых сложных задач, когда разработчикам необходимо подключить свой продукт к коммерческой облачной службе. К счастью, некоторые производители упрощают задачу и экономят разработчикам немало времени и денег, связанных с подобным проектом. Выбрав подходящее и проверенное на безопасность решение, можно сократить процесс проектирования, обеспечив при этом соблюдение всех требований безопасности и обмена данными.
Следует отметить что большинство микроконтроллеров Wi-Fi хранят свои учетные данные во флэш-памяти, где они уязвимы для вредоносных программ и физических атак. Наивысшая безопасность достигается за счет хранения ключей в специальном защищенном чипе, так как данные, содержащиеся в нем, не могут быть прочитаны никаким внешним программным обеспечением. Например, микроконтроллеры Microchip, такие как WFI32, используют этот метод на платформе Trust & GO для безопасного подключения к AWS IoT, Google Cloud, Microsoft Azure и сторонним сетям TLS.
Предварительно сконфигурированные или настраиваемые модули безопасности хранят учетные данные сгенерированные во время производства в модулях аппаратной защиты (HSM), чтобы защитить их от раскрытия. Платформа Trust & Go, необходимая для поддержки этого решения, требует только недорогого набора инструментов Microchip, в котором разработчик работает с образцом кода для создания требуемого файла. Как только C-код для защищенного элемента заработает в устройстве, проект можно отправить в производство.
Еще одно решение в области защиты обеспечивает новейшую безопасность Wi-Fi, сертифицированную Wi-Fi Alliance. WPA3, эволюция WPA2, добавляет функции упрощающие безопасность Wi-Fi, обеспечивая более надежную аутентификацию, обеспечивая большую криптографическую стойкость и сохраняя устойчивость сети к атакам. Все новые устройства должны быть сертифицированы WPA3, чтобы использовать на них логотип Wi-fiAlliance, следовательно любая система связи Wi-Fi, и микроконтроллер со встроенным модулем Wi-Fi, также должны быть сертифицированы. Поэтому стоит проверить, сертифицирован ли предварительно выбранный чип WPA3.
Обеспечение совместимости
К сожалению, всегда есть вероятность что микроконтроллер с Wi-Fi не сможет общаться с некоторыми точками доступа и устройствами, представленными на рынке, из-за несоответствия радиочасти, несовместимости программного обеспечения и других проблем. Поэтому, хотя работа не может быть гарантирована во всех случаях, стоит минимизировать эту проблему, убедившись что выбранный МК Wi-Fi прошел тесты на совместимость с наиболее популярными устройствами доступа. Эту информацию можно найти на сайтах производителей.
И последнее, но не менее важное: поддержка проекта. Без интегрированной среды разработки (IDE) разработчик должен объединить необходимые инструментальные ресурсы из различных источников в Интернете. Например несколько производителей микроконтроллеров с поддержкой Wi-Fi предоставляют базовую информацию о продуктах, советы и инструкции по созданию прототипов, но останавливаются на этом, а не всесторонне помогают разработчикам во всем, что требуется для завершения проектирования и начала производства.
Чтобы помощь в проектировании была действительно полезной, производитель должен предоставить комплексную среду IDE, которая поддерживает все аналоговые и цифровые функции реализуемые микроконтроллером Wi-Fi, и внешние компоненты, необходимые для реализации в новых устройствах. Программное обеспечение должно обеспечивать визуализацию того, как изменения конструкции отражаются на производительности, и обеспечивать возможность оценки конструкции на соответствие нормативным требованиям. Некоторые из инструментов бесплатны, а другие доступны за небольшую плату, включая оценочные платы для семейства Wi-Fi MCU.
Итого, в настоящее время технологические изменения в IoT направлены на предоставление все большей вычислительной мощности на границах сети (включая приложения IoT), а не только через облачные центры обработки данных. Чтобы решить эти проблемы, устройства должны интегрировать как можно больше функций с минимальными размерами и числом компонентов.
Микроконтроллер Wi-Fi, доступный в виде чипа SoC, является одним из примеров эффективных решений, обеспечивающих выполнение многих противоречивых технических и стоимостных требований в проекте, что дает ему преимущество перед схемами использующими дискретные элементы.
Создание устройства IoT может быть относительно простой задачей, если для обеспечения достаточного количества ресурсов используется микроконтроллер со встроенным Wi-Fi. Требуемая функциональность также включает передовые решения безопасности, простой способ подключения устройства к коммерческим службам облачных вычислений и комплексную среду IDE, которая может помочь разработчику от тестирования прототипа и до производства готовых приборов.