Рубрика «микроконтроллеры» - 36

Выводим счетчик электроэнергии в интернет
В статье я расскажу о том, как получить данные о мощности с электросчетчика и вывести их в интернет.
Сразу скажу, что несмотря на то, что счетчик цифровой, и имеет цифровые интерфейсы для связи с внешним контрольным оборудованием, я не использую их (почему — ниже).
Читать полностью »

image
Простой проект с описанием изготовления 4WD машинки с управлением от Android-устройства через Bluetooth канал. Управление машинкой происходит при помощи акселерометра, путем наклона планшета/смартфона. Видео работы смотрите в конце статьи. Все исходные тексты прилагаются.

Инструментарии разработки: Java/Eclipse для Android и .NET Micro Framework/Visual C# Express для микроконтроллера.

Читать полностью »

Понадобилось нам однажды измерять температуру и влажность в одном помещении, несложная задача, стоит обратиться в гугл и там до кучи примеров на ардуино как это сделать, скетчи, схемы и пояснения. Простые задачи подобного рода возникают достаточно часто и каждый раз модифицировать код для контроллера не хотелось. Мы подумали, а что если написать что-то типа интерпретатора для микроконтроллера(МК), который бы принимал команды и выполнял их. Таким образом отпадает необходимость писать софт каждый раз для МК, это занятие требует времени зачастую больше, чем под ПК из-за того, что объем памяти МК ограничен и не попользуешься развитыми средствами типа regex и прочего. Интерпретатор должен быть расширяемый, то есть добавление новой команды, не должно быть зубодробительной операцией. Также в будущем он должен быть легко переносим на ARM Cortex-M3 архитектуру и способен работать через различные интерфейсы связи будь то RS485, Ethernet, ZigBee.

На основании этих требований было решено разработать такое устройство и + библиотеки для работы с ним под несколько языков (сейчас Python и GCC C/C++) и ОС ( Win и Linux) чтобы не париться больше с написанием каждый раз софта для контроллера, который делает рутину — собирает данные или что-то включает или выключает.

Контроллер MeteoBoard
Рис. 1. Контроллер MeteoBoard
Читать полностью »

Сетевое кольцо на микроконтроллерах
Здравствуй, уважаемое читатели!
Не так давно пришлось столкнуться с топологией сети в виде “избыточного кольца (redundant ring)”, о принципах работы которого и хотелось бы поговорить.
Дабы избежать недоразумений, сразу скажу, что в кольцо соединены только устройства на микроконтроллерах — на линии нет никаких коммутаторов и прочего такого. Только микроконтроллеры с физическим уровнем Ethernet в виде трёхпортового аппаратного свитча Micrel (о нём — далее). Ну и поскольку использовался Ethernet, то позволю себе вольность дальше употреблять выражение “сетевое кольцо”.

Изначально пост планировался в виде перевода способов организации кольца из вот этого документа с шутками и прибаутками комментариями и дополнениями. В процессе разработки предложенные варианты были опробованы, но они не устроили по некоторым причинам. Вследствие чего родилась эта статья. Я надеюсь, что описанные здесь способы организации работы сетевого кольца могут пригодиться не только мне.
Кому интересно — добро пожаловать под кат.
Под катом много букв и трафика
Читать полностью »

Введение

Здравствуйте, глубокоуважаемые хабрачане! В первой статье мы рассмотрели в общих чертах программирование в платформе MRDS на примере набора NXT. В данной статье мы узнаем, как управлять непосредственно микрокомпьютером NXT. Напишем несколько простых приложений, демонстрирующих «общение» на программном уровне с управляющим блоком NXT, заставим издавать NXT звуки (приличные и не очень), реагировать на нажатие клавиш, узнаем сколько осталось жить вашему NXT.

Читать полностью »

Введение

Здравствуйте, глубокоуважаемые хабрачане! В своих постах я хочу вас познакомить с продуктом корпорации Microsoft — Robotics Developer Studio 4 (далее MRDS 4), расскажу как запрограммировать робота реального и виртуального. Двигаться мы будем от простого к сложному. В качестве испытуемых роботов будем использовать набор LEGO Mindstorms NXT 2.0 (наиболее удачный, на мой взгляд, вариант) и микроконтроллер Basic Stamp (наименее удачный вариант). И так, приступим!
Читать полностью »

Однажды для одного небольшого домашнего проекта мне потребовался регулятор мощности, пригодный для регулировки скорости вращения электромотора переменного тока. В качестве основы использовалась вот такая плата на базе микроконтроллера STM32F103RBT6. Плата была выбрана как имеющая честный RS232 интерфейс и имеющая при этом минимум дополнительных компонентов. На плате отсутствует слот под литиевую батарейку для питания часов, но приживить его — дело пятнадцати минут.

Итак, начнём с теории. Все знакомы с так называемой широтно-импульсной модуляцией, позволяющей управлять током в (или, что реже, напряжением на) нагрузке с максимальным КПД. Лишняя мощность в таком случае просто не будет потребляться, вместо того, чтобы рассеиваться в виде тепла, как при линейном регулировании, представляющем собой не более чем усложнённый вариант реостата. Однако, по ряду причин такое управление, будучи выполненным «в лоб», не всегда подходит для переменного тока. Одна из них — бо́льшая схемотехническая сложность, поскольку требуется диодный мост для питания силовой части на MOSFET или IGBT транзисторах. Этих недостатков лишено симисторное управление, представляющее собой модификацию ШИМ.
Читать полностью »

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

На случай, если вы пропустили предыдущие части — вот ссылки:
1 — Миникомпьютер из роутера с OpenWRT: разрабатываем USB-видеокарту
2 — Миникомпьютер из роутера с OpenWRT: пишем USB class-driver под Linux
Итак, приступаем к работе.
Читать полностью »

Миникомпьютер из роутера с OpenWRT: пишем USB class driver под Linux
Добрый день, уважаемыее. В прошлой статье мы с вами разработали простую USB-видеокарту на базе STM32F103 и китайского дисплейного модуля на контроллере ILI9325.
Проверяли мы его из юзерспейса, при помощи LibUSB. Ну что ж, пришло время нам написать свой собственный драйвер, который позволит делать все то же самое, но из-под Linux и без дополнительных библиотек. Этот драйвер мы внесем в дерево исходников OpenWRT и он поселится там наравне со всеми остальными.
Начнем.
Читать полностью »

Миникомпьютер из роутера с OpenWRT: разрабатываем USB видеокарту
Добрый день, уважаемыее. В этом цикле статей мы с вами пройдем достаточно длинный, но весьма интересный путь по превращению обычного роутера в мини-компьютер с LCD-дисплеем. Для этого мы разработаем сначала USB-видеокарту на базе микроконтроллера STM32F103, потом тестовый дравйвер, который позволит нам выводить на него графику, и, наконец – полноценный драйвер фреймбуффера, благодаря которому можно будет запустить настоящие графические приложения, такие как x-сервер. Заодно мы научимся включать наш код в дерево исходников OpenWRT, допиливать его ядро и делать прочие полезные вещи.
Ну а в самом конце мы получим результат, который, я надеюсь, вызовет ностальгическую слезу у многих читателей. Я постараюсь излагать материал таким образом, чтобы в конце каждого этапа мы получали осязаемый результат, не дающий угаснуть энтузиазму. Итак, начнем.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js