
Как сделать из китайского ПЛК Arduino с промышленными интерфейсами и другим "блекджеком".
User
Как сделать из китайского ПЛК Arduino с промышленными интерфейсами и другим "блекджеком".
Когда мы говорим о тестировании, большинство представляет проверку кода, интерфейсов, приложений. Но есть другой мир — тестирование «железа»: серверов, систем хранения данных, базовых станций, клиентского и сетевого оборудования. Все это — физические устройства, где важна не только прошивка, но и то, чтобы правильно крутился вентилятор, не отваливалась пайка, а новый модуль памяти не конфликтовал с платформой.
Меня зовут Игорь Попов, я директор департамента верификации и контроля качества в YADRO. Далее я простыми словами расскажу, что такое hardware QA: где мы режем, замораживаем, зачем смотрим, загорается ли лампочка по команде BIOS — и что делаем, если нет. Если ты джун или только начинаешь разбираться в «железе», статья поможет понять, подходит ли тебе такая работа и в чем она на самом деле заключается.
Visual Studio Code прочно закрепился как один из самых популярных редакторов кода, и не зря. Его гибкость, производительность и огромная экосистема расширений делают его незаменимым инструментом для миллионов разработчиков. Однако, даже опытные пользователи зачастую не догадываются о некоторых его «скрытых» возможностях, которые могут кардинально изменить привычный рабочий процесс и значительно повысить продуктивность.
В этой статье мы рассмотрим 5 интересных функций и расширений VS Code, без которых, возможно, вы уже не сможете представить свою разработку.
Иной раз возникает такая ситуация, что надо получить доступ к устройству висящему под потолком.
В этом тексте я расскажу как запустить беспроводную консоль на микроконтроллере.
Когда-то ещё в школе я впервые услышал о полевых транзисторах («полевиках»), и мне сразу захотелось сделать на них усилитель, приёмник или передатчик. В отличие от биполярных, полевые транзисторы обладают большим входным сопротивлением. Тогда мне были доступны только низкочастотные полевики, маломощные и слаботочные, очень чувствительные к статическому электричеству. На них мне удалось собрать разные усилители низкой частоты (УНЧ).
Сегодня полевые транзисторы (FET, Field-Effect Transistors) работают на высоких и низких частотах, способны управлять нагрузками с током в сотни ампер при напряжениях в сотни вольт. На мощных полевиках делают выходные каскады УНЧ и радиопередатчиков, измерительные приборы, схемы для силовой электроники и другие устройства.
Продолжаем разбираться в работе лайвпатчей для ядра Linux. В примере из первой части этой статьи мы загрузили лайвпатч и он каким-то магическим образом настроил все так, чтобы ядро Linux использовало не свою функцию nf_tproxy_laddr4(), а ее исправленный вариант.
Давайте теперь посмотрим, что стоит за этой магией, а после этого разберемся, как все это использовать в продакшене.
В этой части статьи будет и несколько вопросов-заданий для читателя. Ответы и подсказки — в конце.
При работе в современных операционных системах, пожалуй, каждый сталкивался с тем, что некоторые действия он выполнить не может. Например, удалить системные файлы или записать что-либо в COM-порт. При этом, если попытаться выполнить те же действия от имени администратора, никаких проблем не возникает. Иначе говоря, в современных операционных системах организовано разграничение прав доступа.
Нечто подобное, пусть и в меньшей мере, реализовано и во многих микроконтроллерах. В частности, в CH32V303. Давайте рассмотрим, какие ограничения можно выставить в этом микроконтроллере, каким способом и для чего они нужны.
В последнее время заметно увеличилось количество методик изучения иностранного языка. При этом, гораздо меньше внимания акцентируется на, собственно, данных для обучения.
Экспериментируя, уже в зрелом возрасте, весьма продолжительное время, с разными вариантами изучения французского языка, пришел к выводу, что обучающие данные должны удовлетворять следующим условиям:
Если вы хотите получить для своих самоделок достаточно быстродействующий (до 1,5 Мбит/с), дальнобойный (300+ метров), и, в то же время, энергосберегающий (50 мА во время передачи) протокол, то «ESP‑Now» — ваш выбор!
В этой статье мы не будем разбирать подробно все технические особенности протокола, так как для этого есть соответствующие спецификации, — вместо этого мы остановимся на более интересном: его практическом применении и, в общем, ознакомимся с некоторыми особенностями протокола.
Рядовая ситуация в разработке — необходимо проверить работоспособность новой печатной платы. Для этого я каждый раз собирал импровизированный тестовый стенд: источник питания, измерительное оборудование и микроконтроллер с подключенными к нему модулями, реле и преобразователями интерфейсов, который бы имитировал различные события, например переключения выводов, прием и отправку сообщений и прочее. Все это собиралось на макетной плате и проводочках, каждый раз программировалось вручную.
У этого подхода были очевидные минусы — стенд был ненадежным, проводочки могли вылететь, код для стенда, как и для прототипа, тоже надо было написать и проверить, и стенд превращался в еще одну разработку. В какой‑то момент я решил, что хочу упростить этап создания тестового стенда. Так появилась идея устройства «Луч» — компактного прибора с поддержкой популярных интерфейсов, цифровыми входами и выходами, который мог бы заменить собой тестовый стенд. Он позволял бы быстро запустить последовательность действий без написания кода с нуля, и мог бы работать как терминал для многих интерфейсов, этакий швейцарский нож. Именно об этом устройстве я хочу рассказать в этой статье.
Про настройку отладку ваших stm микроконтроллеров с помощью программатора-отладчика STLINK-V3MINIE через встроенную функцию VCP.
В статье описана настройка инструментов на ОС Windows и ОС Linux, также приведен пример кода для вывода данных себе в терминал на ПК.
Продолжаю свой рассказ о SDR‑трансивере HackRF One. На этот раз хотелось бы рассказать о том, что делать с устройством, когда оно оказалось у вас в руках. Какие проекты и способы использования доступны для обычного пользователя и радиолюбителя. Я постарался обобщить в статье всё, что удалось найти и то, что меня заинтересовало больше всего. Начну с процесса настройки, а потом попробуем железку в деле!
Всем заинтересованным — добро пожаловать под кат!
Представим ситуацию: вам вдруг захотелось вечерком/на выходных сделать устройство умного дома (условимся, что это Arduino подобное устройство). Причины и цели не так важны: хотелка, необходимость, спортивный интерес, да что угодно. Вы начинаете искать информацию о популярных платах, способах взаимодействия с устройством, хранении данных и т.д. Есть множество статей по данным темам с примерами, но вам не хочется погружаться в код, а хочется только описать логику устройства и сразу им пользоваться. Что же делать? Для такого случая был создан SmartThing
- это проект нацеленный на упрощение и ускорение разработки законченного устройства умного дома (или же IOT устройства).
Картинка rawpixel.com, Freepik
В прошлой статье мы затронули очень интересную тему — распределённые хостинги/хранилища данных.
Было бы странно, если бы идея распределённых систем ограничивалась только хранилищами ;-)
Поэтому сегодня мы поговорим ещё об одном интересном направлении, о котором редко говорят — распределённых сетях радиосвязи. Возможно ли это?
Я больше года использовал Cursor. Подробно изучил все его возможности и лучшие практики работы с инструментами и... отказался от всего этого в пользу Claude Code.
Уже несколько недель я полностью работаю в Claude Code вместо Cursor. И, честно говоря, возвращаться совсем не хочется. В этой статье я расскажу, как использую Claude Code и поделюсь своими советами по его максимальному использованию.
В статье расскажу, сколько денег может налетать агродрон, и как быстро можно окупить подобное предприятие.
Всем привет!
Меня зовут Егор - я бэкенд разработчик и работаю в бигтехе. Но я не буду рассказывать о перекладывании jsonчиков (или буду). Данная статья (надеюсь, вы оценили каламбур в названии) рассчитана на разработчиков, которые ранее слышали об Arduino или пробовали программировать под эту платформу. В ней мы рассмотрим опыт новичка в плане проектирования и разработки IoT устройства мониторинга уровня CO2 в помещении. Наша цель - сделать устройство, которым просто пользоваться и оно приносит пользу.
Когда у меня была сеть ночных клубов, я записывал все дела в блокнот. Кустарный метод — просто выписываешь задачи на листочек и вычёркиваешь. Проблема была очевидная: блокнот должен быть постоянно под рукой. Вышел погулять, появилась задача — записать не можешь. Кто-то позвонил, а блокнот лежит дома.
В этой статье я поделюсь тем, как можно быстро переключаться и эффективно работать, когда у вас есть много задач с разными контекстами, и все они требуют глубокого погружения.
Недавно работал в команде, занимавшейся разработкой встроенного ПО. Это ПО в значительной степени основывалось на конечных автоматах, которые десятками были разбросаны по множеству функций. И хотя такая архитектура весьма распространена в разработке встраиваемых систем, в особенности систем без ОС, я задался вопросом: неужели нет способа выразить поток управления более чисто?
Конечные автоматы в нашем коде работают прекрасно, но их понимание и обслуживание зачастую вызывало головную боль. В их работе отсутствовал линейный поток, плюс они требовали мысленного жонглирования флагами, состояниями и переходами, происходящими в функциях опроса.
Меня не покидала мысль: «А не будет ли проще написать логику в виде последовательной программы, ожидающей события и возобновляющей выполнение с места остановки?»
Естественно, в проекте не допускалось использование RTOS, посему традиционный подход применения потоков или систем блокирования для управления конкурентностью не рассматривался. Но я знал, что должна быть некая золотая середина.