Однажды у сына сломался железнодорожный переезд и он с полной уверенностью заявил, что «папа починит». Деталь была из PP пластика и сломалась в таком месте, что клеить бесполезно, поэтому я взялся за штангенциркуль и сделал модель переезда. Знакомый его напечатал на 3D принтере (у меня тогда ещё не было своего). Но меня не оставляла мысль, что кое чего не хватает. и вот доработанная модель напечатана, собрана, а на каникулах добавился пульт управления переездом.
ЖД переезд со сфетофорами и шлагбаумами с контроллером. Совместим с ЖД IKEA LILLABO
Переезд автоматический, два светофора управляются зелёной кнопкой вручную или черной кнопкой переводятся в автоматический режим. На зелёный свет шлагбаумы сами открываются, на красный закрываются. Питание от power bank через microusb или встроенного в пульт аккумулятора. зарядка тоже через microusb. Пульт отключается и сервоприводы можно открывать вручную.
Контроллер выполнен на STM32F103C8, светофоры на светодиодах WS2812B, управляемых по одному проводу. Сервоприводы также подключены по одной линии и управляются синхронно, но могут быть подключены и раздельно. Альтернативно можно реализовать железнодорожные светофоры с датчиками поезда, стрелки, пешеходные светофоры. Сервоприводы обычные девятиграммовые с моментом 1.8 кг*см. Питание на модуле LiIon-5В бустера и модуле защиты и зарядки LiIon АКБ. В качестве встроенного источника энергии LiIon АКБ типоарзмера 18490.
Прошивка построена с использованием FreeRTOS, проект собирается в среде STM32CubeIDE.
Контроллер ЖД переезда со сфетофорами и шлагбаумами
ST Microelectronics проделали замечательную работу в попытке интегрировать инструменты для embedded разработки под STM32. У них почти получилось, но в CubeMX и генерируемой им коде довольно много косяков, для которых приходится придумывать обходные пути.
Одна из проблем — использование sprintf(«Value is %8.2f», f); приводит к HardFault
То есть вы не можете выводить и вводить числа с плавающей точкой при использовании FreeRTOS. На голом проце — пожалуйста, достаточно включить -u _printf_float в настройках проекта (MCU Settings). А вот под FreeRTOS это вызывает HardFault.
С понедельника (16.11.2015) мы открываем базовый курс практический робототехники на платформе Arduino при кафедре САУ (ИУ1) факультета ИУ МГТУ имени Баумана.
Целью курса является заложить основы для дальнейшего изучения робототехники, разобрать принципы программирования микроконтроллерных систем, научить применять на практике микроконтроллерные платы, датчики и актюаторы.
Arduino выбрана за ее простоту обучения, низкий порог входа и удобство в изучении основных принципов. Несмотря на все ее недостатки, эта программно-аппаратная платформа проста как конструктор LEGO, имеет достаточно большие возможности по расширению, позволяет быстро собрать прототип и проверить идею. А в обучении это одни из важнейших качеств.
Кроме того, проект можно перенести на свою собственную микроконтроллерную плату с минимальными изменениями или вовсе без них, можно отладить код на чистом С/С++ или ассемблере на плате Arduino, убедиться в его работоспособности и переносить на свою или промышленную плату.
На базе Arduino существует множество неплохих готовых плат для построения относительно несложных роботов. Их выпускают Pololu, DFRobot, Amperka и множество других производителей:
Сколько можно разрабатывать коптеры для других, верно?
Мы решили, что пора самим пользоваться ими и на деле показывать что умеет наша электроника и ПО.Наша команда запустила сервис аэрофотосъемки, аэровидеосъемки, ортофотопланов и 3D панорам на заказ.
Посмотреть некоторые наши работы можно на сайте http://highpoint.photo.
В четверг читал лекцию «Полетный контроллер. ПИД регулятор» для уже второй группы обучающихся самостоятельно собирать квадрокоптер.
Один из студентов делится своими впечатлениями.
Уровень подготовки, конечно, самый разный. Причем, девушки часто лучше подготовлены и больше в теме, чем парни.
IMU пишут с ошибкой, но в целом, заинтересованы, что радует.
Одно из моих самых больших увлечений — беспилотные летательные аппараты и роботы. Вот уже некоторое время я сотрудничаю с RusAeroLab и 21-24 октября мы выставляли на Интерполитех 2014 свои аппараты, наземную станцию управления, электронику и ПО собственной разработки.
Пока я ездил по Беларуси вышла новая версия Em:Blocks IDE 2.20.
Что нового? В основном багфиксы, но есть и полезные фичи.
В частности:
Поддежка новых МК на Cortex-M0+
Мастер проектов поддерживает чипы nRF (Nordic) и интеграцию с SoftDevice
Поддерживается замена макросов в интерфейсе дебаггера (давно пора)
Отвечая на вопрос, который всегда задают — да, R Em::Blocks tweaker-patcher поддерживает и версию 2.10 и 2.20. единственное, нужно правильно указывать папку «Em::Blocks config folder», у меня это 2.00. Цифра в окошко подставляется автоматически соответственно версии установленной IDE, т.к. в реестре путь к конфигам не хранится. Проверить легко — нажмите «1. Load config» и если такой папки нет, то в в логе появится сообщение об ошибке.
К сожалению, сайт emblocks.org на момент написания поста лежал, поэтому выкладываю для скачивания
дистрибутив Em::Blocks 2.20. Читать далее →
В версии Em::Blocks 1.43 появилась новая структура шаблонов для STM32.
Теперь они более грамотно организованы.
В патч-твик я добавил SPL для STM32F10x и STM32F4xx, а также CMSIS 3.0 для STM32 на ядре Cortex-M3 (серия F1 и F2).
Твикер теперь недеструктивно настраивает среду — все изменения легко откатить — оригинальные файлы не изменяются.
Также можно сбэкапить профиль KeyBindings для перехода между версиями.
Замечу, что в пределах major версий папка профиля сохраняется. Напрмиер, для всех версий 1.4x папка будет 1.40.
Скачать R EmBlocks patcher-tweaker v1.2.0.27
Патч для версий 1.40 и 1.41 как и для всех последюущих версий будет доступен на своей постоянной страничке R EmBlocksPatch.
В этой версии патча я удалил поддержку ColinkEx — пользоваться этим отладчиком удобно только под CooCox IDE — у них неполноценный commandline API — нужно много чего править в конфиг файлах отладчика для прошивки и отладки.
Если кому-то она нужна, то добавляется очень просто. Можно взять из предыдущей версии патча все, что для нее нужно.
По просьбе читателей добавил выбор вручную папки .config файла (для тех кто на XP)