Обновить
1
0
Евгений@segrus

Пользователь

Отправить сообщение

Открытый проект универсального микроконтроллерного модуля

Время на прочтение4 мин
Охват и читатели17K


После беглого знакомства в прошлой статье с микроконтроллерами семейства Kinetis от фирмы Freescale я хотел бы представить проект микроконтроллерного модуля на этих чипах.
Читать дальше →

Fault detection на примере определения поверхности автономной машинкой

Время на прочтение8 мин
Охват и читатели16K
Всем привет!

В этой статье я расскажу про то, как мы делали автономную машинку на базе нашей ОС Embox, которая детектирует изменение типа поверхности, по которой едет.

Так случилось, что в Новый Год у меня в руках оказалась китайская машинка на радиоуправлении. К сожалению, она не ездила. Чека из магазина у меня не было (машинка была подарком), да и, честно говоря, хотелось её разобрать и посмотреть на элементы схемы. Обычным способом схему было не достать, нужно было выпаивать. Пожалуй, в тот самый момент, когда я взялся за паяльник, я и понял, что вернуть машинку в магазин уже точно не получится. Короче говоря, всю зиму на моём подоконнике так и пылились запчасти, пока однажды мне на глаза не попалась статья от NASA про обнаружение разладки в марсоходе.

Только представьте на минуту: где-то далеко на красной планете едет марсоход, обвешанный датчиками, по поверхности, которую едва ли можно назвать дружелюбной. Поэтому нужно следить за тем, чтобы он не перевернулся, не застрял в песках, не скатился с горки, или наоборот на нее не заехал. Как это сделать? Вот на такой непростой вопрос мне и хотелось ответить.
Читать дальше →

CH341A, USB-UART-конвертер и I2C/SPI-программатор за $5

Время на прочтение4 мин
Охват и читатели284K
Когда-то давным-давно я писал пару статей о широко известном в узких кругах чипе FTDI FT232H и различных его применениях. Всем хорош был FT232H для DIY, но и у него нашлось несколько недостатков — относительно неприятный для ручной пайки корпус LQFP48 (для истинных любителей хардкора есть еще вариант в QFN48, паяй — не хочу, DIHALT не даст соврать), цена за оригинальный чип от 250 рублей, вероятность проблем с драйверами на поддельных чипах и некоторая функциональная избыточность, к примеру, поддержка JTAG нужна далеко не всем.

Решение, как обычно, пришло из Поднебесной, в которой после нескольких лет тупого передирания творческой адаптации чужих чипов наконец выпустили свой собственный конвертер USB-TTL — WinChipHead CH341A в корпусе SOP-28 (не DIP, но тоже паяется без проблем).

Производство чипа было начато году приблизительно в 2006, но в поле моего зрения он попал только в 2014, когда I2C/SPI-программаторы на этом чипе наводнили европейский EBAY, причем продавцы предлагали цену от 3,5 евро вместе с доставкой, что при средней стоимости хорошего китайского программатора вроде MiniPro TL866A в 50 евро оказалось настолько заманчивым предложением, что устоять не получилось.

Если вам все еще интересно, что умеет этот китайский чип за 1$ и стоит ли платить больше, если не видно разницы — прошу под кат.
Читать дальше →

Arduino -> FLProg -> RS-485 -> Modbus

Время на прочтение4 мин
Охват и читатели73K

Вышла новая версия программы FLProg c номером 1.9.1. Я подумал что нововведения в программе заслуживают освещения на хабре.Так же расскажу немного теории о протоколе Modbus и особенностях его реализации на борту Arduino.
Если интересно, читаем дальше

Моя система тестирования и повышения качества GSM шлюза, часть первая: функциональный и схемный уровень

Время на прочтение12 мин
Охват и читатели21K

Вторая часть

С чего всё начиналось


Я работаю в небольшой фирме, которая разрабатывает и производит системы записи телефонных разговоров. Но в ряде случаев клиентам нужен аналоговый GSM шлюз как источник телефонной линии. Ранее его закупали и перепродавали. Но то что закупали было низкого качества и часто попадался брак — было принято решение самим разработать. Разработали мы вдвоём: схемотехник и я — программист, недавние выпускники без опыта разработок в аналоговой телефонии и без опыта внедрения в производства. Получилось, мягко говоря, не очень, хоть и была решена проблема брака и скорее «вопреки».

Но проблема в том, что для нас даже 1% брака недопустим: на каждый случай у тех поддержки и разработчиков уходило очень много времени на клиента. Да и для всех нас это недопустимо чисто из соображений профессиональной гордости. Мы хотели такой шлюз снять с производства, даже несмотря на то, что у нас была доля от каждого изделия. Это очень стыдно, когда дилеры про остальные изделия говорят: «у вас вообще брак бывает?», а про наши «мы боимся их продавать — у нас же потом ничего не купят».

Всё это и стало королевским пинком к полной переделке шлюза, детальной проработки качества и разработке системы тестирования. Чем я и занялся, и о чём далее и расскажу.

Как мы от этого

Снизу платы только китайский GSM модуль

Пришли к этому
Верх:



Низ:



Расскажу как полностью изменилось изделие и появилась система тестирования и сопровождения производства. Расскажу как изменилась функциональная схема, объясню как работает электрическая схема доработанного варианта. А в следующих частях расскажу про логи и алгоритмы тестирования и чем тестируется плата. Приведу немного исходного кода. И расскажу об распределённой АРМ для прошивки, тестирования и анализа логов, что была развернута на производстве и у разработчиков.
Читать дальше →

Детектируем, разбираем, изучаем, паяем и глушим полицейские радары и лидары

Время на прочтение17 мин
Охват и читатели206K
Давным давно, в 1902 году, сидят в кустах трое полицейских (с интервалами в 1 милю), у каждого секундомер и телефон. Проносится мимо первого автомобиль, он тут же засекает время и звонит второму, второй делает математические вычисления и звонит третьему, а тот уже останавливает машину. (пруф)


«Антирадар» в разборе. (Радар-детектор — пассивный приемник сигналов полицейских радаров, предупреждающий водителя о необходимости соблюдать установленный скоростной режим.)

Сегодня речь пойдет о приборах для радиоэлектронной борьбы на наших дорогах.
Пока антирадары и радар-детекторы у нас не запрещены, то РЭБ у нас не ведется, но в некоторых странах война идет по полной. Мы же можем только подготовиться.
Радиоэлектронная борьба (РЭБ) — разновидность вооружённой борьбы, в ходе которой осуществляется воздействие радиоизлучениями (радиопомехами) на радиоэлектронные средства систем управления, связи и разведки противника в целях изменения качества циркулирующей в них военной информации, защита своих систем от аналогичных воздействий, а также изменение условий (свойств среды) распространения радиоволн. Wikipedia
Как противостоять тому, кто пытается снять о вас информацию без вашего ведома и как защитить свои «персональные данные» от несанкционированного съема.

Радары, детекторы радаров, детекторы детекторов радаров. О том, какие бывают, как сделать/распилить самому и то и другое.
(Спасибо интернет-магазину fonarimarket.ru за предоставленное оборудование)
Читать дальше →

Автоматический регулятор температуры газовой колонки

Время на прочтение5 мин
Охват и читатели60K
Хочу рассказать о создании несложного устройства, которое сильно облегчило жизнь домашним обитателям — автоматический регулятор температуры газовой колонки. Подобные устройства уже создавались и описывались здесь на хабре, хотелось сделать чуть более продвинутый девайс и подробно описать весь процесс создания от задумки и измерения до реализации, без использования готовых модулей типа Arduino. Устройство будет собрано на макетной плате, язык программирования — C. Это моя первая разработка законченного (и работающего!) устройства.
Читать дальше →

Надежное хранение и обновление данных во флэш памяти микроконтроллеров STM32 и MSP430

Время на прочтение8 мин
Охват и читатели29K
Часто возникает задача сохранить изменяемые данные, например конфигурацию, во флэш памяти микроконтроллера. Решение кажется простым, однако обеспечить надежность обновления данных при условии, что питание может отключиться в любой момент, оказывается весьма нетривиально, и даже использование контрольных сумм не решает проблему полностью. Из этой статьи вы узнаете
  • как устроена флэш память
  • к каким проблемам приводит выключение питания в момент записи или стирания
  • как эти проблемы решаются

Для желающих применить на практике — работающий код под STM32F4
Читать дальше →

Первые советские транзисторы работают

Время на прочтение2 мин
Охват и читатели114K
imageС незапамятных времен у меня валялись германиевые транзисторы П1А и П3А. Год выпуска — 1957. Ну может они не самые первые, но из первых общедоступных уж точно. Решил я что-то из них сделать. Кто интересуется, что получилось, прошу проследовать ниже.
Читать дальше →

Загрузка скетчей в Arduino через Bluetooth

Время на прочтение4 мин
Охват и читатели107K
Программируя Arduino, иногда желательно обойтись без физического соединения через USB к компьютеру, например:

  • Силовые цепи — коммутирование 220В. Одна ошибка в соединении и прощай USB-контроллер любимого ситемного блока.
  • Радиочастотные цепи — много наводок по питанию.
  • Собранные и где-то закрепленные устройства, которые желательно перепрошивать, но неудобно к ним подлезать.

В интернете можно найти несколько публикаций на эту тему, но все они обрывочны и полностью готового решения нет. Также, несмотря на простоту и очевидность конструкции, имеется несколько маленьких затруднений, которые готовы сорвать всё мероприятие. О том, как их преодолеть, я и хочу рассказать в этой статье.

Плата Arduino подключена к Bluetooth модулю для беспроводной заливки
Читать дальше →

Альтернатива Wiring для Arduino — BASCOM-AVR

Время на прочтение5 мин
Охват и читатели129K
Ну не нравится мне этот ваш Wiring. А еще он почему-то у меня очень ме-е-едленно компилирует, а потом долго думает перед прошивкой.
Я постараюсь рассказать об альтернативной среде для программирования AVR-контроллеров, которая совмещает в себе редактор кода, компилятор, и отладчик-симулятор. К тому же, в последих версиях среда без лишних телодвижений может использоваться с загрузчиком Arduino(т.е. без переделки платы, перепрошивки загрузчика и т.д.)

Читать дальше →

Управление громкостью многозонного усилителя при помощи приложения для Android и Arduino

Время на прочтение7 мин
Охват и читатели31K

Прежде всего хочу поблагодарить 470 читателей проголосовавших за продолжение в статье про многозонный усилитель.

Эксплуатация усилителя показала, что регулировать громкость не очень удобно находясь в помещении, которое может быть достаточно далеко находиться от кладовки где расположен усилитель с регуляторами громкости. Приходится несколько раз сбегать в кладовку и обратно добиваясь желаемого уровня громкости.

Так родилась идея регулятора, который всегда с тобой в кармане, т.е. приложения для телефона которое может управлять усилителем через Wi-Fi сеть.
Подробности

Arduino + ESP8266 с нуля на примере Wi-Fi термометра, часть первая

Время на прочтение5 мин
Охват и читатели290K
Часть 1. Подготовка ESP8266

Зачем эта статья? На хабре уже есть ряд статей про использование ESP в разных конфигурациях, но почему-то без подробностей о том, как именно все подключается, прошивается и программируется. Типа «я взял ESP, две пальчиковые батарейки, DHT22, закинул в коробку, потряс часик и термометр готов!». В итоге, получается странно: те, кто уже работают с ESP не видят в сделанном ничего необычного, а те, кто хочет научиться — не понимают с чего начать. Поэтому, я решил написать подробную статью о том, как подключается и прошивается ESP, как его связать с Arduino и внешним миром и какие проблемы мне попадались на этом пути. Ссылки на Aliexpress привожу лишь для представления порядка цен и внешнего вида компонентов.

Итак, у меня было два микроконтроллера, семь разных сенсоров, пять источников питания, температурный датчик DHT22 и целое множество проводков всех сортов и расцветок, а так же бессчетное количество сопротивлений, конденсаторов и диодов. Не то, чтобы все это было необходимо для термометра, но если уж начал заниматься микроэлектроникой, то становится трудно остановиться.


Читать дальше →

Игра-подобие Pacman на STM32F429I-DISCO с редактором карт

Время на прочтение4 мин
Охват и читатели10K
Видео для привлечения внимания



В двух словах о себе

Студент почти уже 4 курса факультета ПМ-ПУ Санкт-Петербургского государственного университета, с 1 курса потихоньку программирую на C/C++, около полугода назад стал поглядывать в сторону Java (огромное спасибо проекту JavaRush!). Регулярно цепляют новые темы для изучения: в рамках диплома занимаюсь обработкой изображений, также мучаю Qt, успел повозиться с машинным обучением, сделать проект на Ruby on Rails, а сейчас начинаю копаться в распознавании речи.

И вот однажды я понял, что мне хочется попробовать поработать с «железом». Долгие поиски в интернете и раздумья привели меня к тому, что я решился разбираться с ARM процессорами. Аргументами в пользу этого стало также и то, что в обозримом будущем, когда появятся свободные деньги, мне бы хотелось прицепить ко всему этому камеру и дисплей — мощность ARM вполне позволит мне это сделать.

Знакомство с железом

Мой выбор пал на семейство STM32. Подумав, что с парой светодиодов я быстро наиграюсь, а вот с экранчиком уже можно вдоволь поразвлекаться, я заказал себе STM32F429I-DISCO. Будучи ужасно разочарованным всеми питерскими магазинами, которые продают нужное мне железо, я все-таки получил заветную плату. Около недели разбирался с основами, радуясь каждому мигающему светодиоду или заработавшей функции.
Читать дальше →

Вызов традициям Hi-Fi. Цифровые потенциометры в деталях. Часть вторая

Время на прочтение4 мин
Охват и читатели51K


Для меня стало неожиданностью, что наиболее горячие споры при обсуждении моей предыдущей статьи касались в первую очередь возможности применения цифровых сопротивлений в качестве регулятора громкости аудиосигнала в HiFi аппаратуре. Для того чтобы внести в этот вопрос ясность я решил посвятить отдельную статью детальному разбору схемотехники высококачественного регулятора громкости с цепями подавления импульсных помех переключения на основе VDAC AD9252. Кроме схемотехники вы также сможете под катом познакомиться с достигнутыми характеристиками.

Тем, кто не читал мою вчерашнюю статью, в которой разбирались общие вопросы, касающихся цифровых сопротивлений настоятельно рекомендую предварительно с ней ознакомиться тут. Во первых, лучше поймёте о чём собственно идёт речь ниже, а во вторых если вас заинтересовала сегодняшняя тема, то и в ней найдёте интересный для себя материал.

Для того чтобы привести обещанные примеры реальных схем программно управляемых преобразователей величин, перестраиваемых фильтров и других электронных узлов параметры которых можно менять с помощью цифрового сопротивления придётся писать третью статью. Постараюсь сделать это в ближайшем будущем, а пока предлагаю исследовать тянет ли регулятор громкости собранный на основе топового прибора от ADI на применения в HiFi аппаратуре ну хотя бы низшего ценового сегмента.
Читать дальше →

Когда не помогает ЦАП. Цифровые потенциометры в деталях. Часть первая

Время на прочтение9 мин
Охват и читатели139K


Прогресс не обошёл стороной не только велосипед. Сегодня традиционные переменные и подстроечные резисторы в очень многих приложениях уступают место цифровым сопротивлениям. В англоязычных источниках их называют digital potentiometer, RDAC или digiPOT. Область применения этих устройств гораздо шире регулировки уровня звукового сигнала. В частности они приходят на помощь в очень многих случаях, когда требуется изменять параметры обратной связи, что трудно реализовать с помощью традиционных ЦАП.

Особенно эффективно их применение в связке с операционными усилителями. Так можно получить регулируемые усилительные каскады, преобразователи разного рода величин, фильтры, интеграторы, источники напряжения и тока и многое многое другое. Словом эти очень недорогие и компактные устройства могут быть полезными каждому разработчику электроники и радиолюбителю…

Изначально я хотел написать краткую статью, но в результате углубленного изучения темы материал с трудом уместился в две части. Сегодня я постараюсь рассказать об архитектуре данных устройств, их возможностях, ограничениях использования и тенденциях развития. В заключении вскользь затрону тему областей применения, поскольку конкретные примеры практической реализации схем на их основе будут рассмотрены во второй части. МНОГО примеров!

Лично я за последние пять лет с успехом применял цифровые сопротивления в нескольких своих разработках, надеюсь что данный цикл статей окажется полезным для многих и поможет вам решать многие задачи более изящно и просто, чем сегодня. Людям, далёким от разработки электроники данная статья может просто расширить кругозор, показав как эволюционируют под натиском цифровых технологий даже такие простейшие вещи, как переменные резисторы.

P.S.Так получилось, что уже вышла ещё одна статья из этой серии и в ней пример всего один, зато подробно разобранный. Для остальных обещанных примеров придётся писать третью.
Читать дальше →

USB-адаптер для цифрового вольтметра В7-28 на базе Arduino Mega

Время на прочтение4 мин
Охват и читатели22K
article-v7-28.jpg

Наша лаборатория занимается, в числе прочего, измерением электросопротивления различных образцов. Основные рабочие лошадки нашей измерительной установки — цифровые мультиметры американской компании Agilent, такие как 34401A.

Кроме этого, долгое время лежали неиспользуемыми несколько стареньких, но рабочих вольтметров В7-28 (один из них на фото). Данный вольтметр, правда, уступает по точности и быстродействию «американцам», но всё равно достаточно хорош: точность до 5 десятичных цифр, приемлемая шумность, экранированные входы, а главное — возможность дистанционного управления с ПЭВМ (которые теперь зовутся ПК).

Использовать их не получалось по следующим причинам:
Читать дальше →

«1-wire» для кнопок с индикацией

Время на прочтение2 мин
Охват и читатели51K
Задумал я как-то в одной из конструкций применить вот такую кнопку с индикацией состояния:

image

Внутри — пара замыкающих или переключающих контактов и светодиод (опционально — уже с гасящим резистором на выбор для питания от 5, 12, или 24 В). Все бы с ней хорошо, но разместить кнопку планировал на приборной панели автомобиля, а управляющий блок — в моторном отсеке. А тянуть отдельные провода для контакта и для индикации уж очень не хотелось.

Как это решить, и что для этого нужно — под катом
Читать дальше →

Метеостанция не на Arduino, или Работа с таймерами и прерываниями GPIO в OpenWRT

Время на прочтение9 мин
Охват и читатели23K
Привет, Хабр, давно не виделись!

Сначала — несколько важных новостей о проекте микрокомпьютеров Black Swift, а потом перейдём к основной теме: как на микрокомпьютер с OpenWRT сделать полноценным встраиваемым устройством.

Полноценный встраиваемый компьютер, на мой взгляд, невозможен без двух вещей:
  • Поддержка прерываний по разным поводам, включая сигналы на входах GPIO
  • Поддержка аппаратных таймеров с хорошим разрешением


Без этого значительная часть реальных задач автоматизации либо не решается вообще, либо решается так, что лучше бы не решалась вообще. Исключение составляют только самые банальные — реле подёргать, светодиодиком помигать, пару кнопок отследить. Всё, что требует точных таймингов и/или более-менее быстрой реакции на внешние события — попросту нереализуемо без выноса соответствующего функционала во внешний контроллер, который вышеуказанные вещи умеет, что бессмысленно усложняет конструкцию устройства.

Тем удивительнее, что при достаточном количестве микрокомпьютеров на SoC Atheros AR9331 и более дешёвых Ralink RT5350, позиционируемых именно как встраиваемые решения, с поддержкой в OpenWRT именно этих двух функций всё крайне печально. Здесь, конечно, возникает вопрос, кому эти микрокомпьютеры при таком уровне поддержки нужны — но оставим его висеть в воздухе.



Впрочем, если посмотреть на неё же по TCP/IP, то может сойти и для здорового человека.

Но сначала — новости:

  • Первая партия Black Swift — в России и уже рассылается по рублёвым предзаказам (то есть сделанным не на Kickstarter). Если вы при предзаказе указывали доставку — ждите, если самовывоз — звоните в офис и подъезжайте.
  • Если вы не оформляли предзаказ, но хотите купить Black Swift — звоните в офис и подъезжайте, у нас довольно много плат сверх объёма предзаказов. Оформить доставку можно, но тогда вы по понятным причинам встанете в хвост очереди предзаказов.
  • Сертификация FCC скоро завершится, судя по всему — успешно.
  • Удовлетворение бэкеров с Kickstarter, как и обещалось, ожидается в июне. Разослать отдельно русскоязычным или каким-либо ещё отдельным бэкерам платы мы не можем по техническим особенностям Kickstarter.
  • Потихоньку пополняется документация, из-за нехватки времени —  в первую очередь англоязычная.
  • В частности, образы виртуальных машин с OpenWRT SDK и Eclipse — вот тут (через пару дней обновлю их на свежую версию SDK с нашими патчами). Полезны для всех, кто хочет что-то писать под OpenWRT, но не очень понимает, как.


Ну а теперь — к теме.

Читать дальше →

Обучение на STM32 в массы

Время на прочтение6 мин
Охват и читатели154K

Небольшая предыстория


Я очередной выпускник некоего московского вуза (не буду уточнять какого, но средненького). Полгода назад нам сообщили, что пора писать диплом. На тот момент я только-только начал осваивать микроконтроллеры и давалось мне это не то, чтобы нелегко, но со скрипом, который производит холодильник, когда ты, в одиночку, пытаешься аккуратно сдвинуть его, не повредив драгоценный ламинат (в моем случае линолеум).

Мое обучение началось, когда я два года назад заинтересовался темой микроконтроллеров и инженер, у которого поинтересовался насчет них, выдал мне плату 300х200мм и сказал, что в ней стоит контроллер STM32F217ZGT6 и на этой плате есть все необходимое для обучения. «В общем, освоишь ее — все остальное покажется фигней» (он, правда, не сказал, что для моргания светодиодом надо настроить SPI, о котором на тот момент я даже не слышал). Спустя три не очень напряженных месяца бесплотных попыток, осознания слабости навыков программирования и огромного количества прочитанных статей пришлось все же раскошелится на STM32VLDISCOVERY и способом копирования программ и экспериментов с ними дело наконец-то пошло, но все равно медленно.

За полтора года успел поработать разработчиком, искал вакансии, где работают с STM32 (так как считаю, что сейчас это наиболее перспективные микроконтроллеры своего класса), нахватался опыта и когда дело дошло до диплома, вспомнил о своих наболевших мозолях. Идея с темой пришла мгновенно: «Отладочная плата на STM32 и (полноценный) обучающий курс (для самых маленьких) к ней».

Да, знаю, знаю, от многих инженеров слышал, что с темой «отладочная плата» «будь я преподавателем, я бы тебя завалил на защите», но все же считаю, любая идея имеет право на жизнь, так что всем, кому интересно, прошу читать далее.
Читать дальше →

Информация

В рейтинге
Не участвует
Откуда
Краснодар, Краснодарский край, Россия
Дата рождения
Зарегистрирован
Активность