Контроллер маломощного униполярного шагового двигателя

Предыстория
Понадобилось мне прошлой осенью восстановить измерительный стенд. Одна из главных частей стенда — система протяжки лески с закрепленной на ней трубочке сквозь СВЧ-резонатор (это такая медная банка весом 20-30 кг). Причем протяжка должна осуществляться периодически с фиксацией положения (на 1мм подвинул, остановился, подождал секунду, ещё на 1мм подвинул, и так далее). Естественно сразу возникла мысль о шаговом двигателе (ШД). Но как им управлять? Разобрался. Начал искать схемные решения — биполярными двигателями сложно управлять, поэтому выбор пал на униполярный. Был приобретён кЫтайский моторчик под названием
MOTS1 (ST28), который в России продаётся Velleman`ом

Купленный моторчик оказался без какой-либо документации. В интернете — тоже почти ничего. Позже экспериментально нашёл необходимую последовательность управляющих сигналов.
(далее…)

Read More »

ZigBee модуль Microchip-MRF24J40MA

Встала необходимость осваивать радиоканал. Стояла задача — передача небольших объемов информации с большого количества устройств. Начал рассматривать варианты.

  • Блютус (на него изначально упал взгляд у заказчика). Не подошел — малое расстояние, и не более 7 устройств в сети.
  • Вай-фай. Не более 32 устройств в сети. Не подошел.
  • Разнообразные трансиверы — удлинители ком-порта. В основном предназначены для работы в режиме точка-точка.
  • ZigBee-образные устройства. Стандарт IEEE-802.15.4. Приглянулись сразу. Вот про них и рассказ.

Для целей ознакомления остановился на готовом модуле от Microchip – MRF24J40MA. На алиэкспрессе продается, тут. У атмелов есть похожий чип AT86RF220 и интегрированное решение ATMEGA128RFA1. Облизнулся на последний, но в пределах досягаемости не было, под заказ — долго. Но обязательно потом возьму, погоняю.

Знакомство
Итак, встречайте героя. Модуль MRF24J40MA на чипе MRF24J40.

MRF24J40MA

(далее…)

Read More »

Логический анализатор LOGIC-U PLUS

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

Привезли мне это чудо, доставили прям до двери, в простом бумажном пакете с марками украины. Коробочка маленькая, размером с две ладони. (далее…)

Read More »

AVR. Учебный Курс. Кусочно-линейная аппроксимация

Часто бывает так, что приходится обрабатывать жутко нелинейные величины, задаваемые каким-нибудь извращенным законом. Простейший пример — датчики расстояния SHARP GP2D12. Только поглядите на его характеристику:

Сам черт ногу сломит, а ведь нам бы неплохо иметь выход в человеческих величинах, ну или, хотя бы, линейно зависящие от расстояния. Что делать?

Вариантов тут, на самом деле, всего два. Первый очень быстрый, но жадный до памяти ПЗУ — табличный.
То есть мы просто берем и эту кривулину расписываем в памяти. Например, у нас с 8ми разрядного АЦП идет значение напряжения от 0 до 256, а мы на каждое значение создаем в памяти значение расстояния. Тогда с АЦП сразу гоним в индекс массива, где эти значения хранятся и получаем расстояние:

L=Curve[ADCH];

Недостаток один — прожорливость до памяти, растущая в геометрической прогрессии с ростом разрядности АЦП.

Вариант второй — написать функцию, переводящую одну величину в другую. (далее…)

Read More »

Переезд

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

Read More »