arduino

Подписчиков:
19
Постов:
41
Этот https://reactor.cc/post/5767343 пост напомнил мне свой старый проект, в который я вложил много сил и времени в своё время.
В до-андроидо-айфоновские времена мне в руки попал телефон с qwerty-клавиатурой (Sony ericsson P990i), с которым я проходил несколько месяцев. Мне так понравилось сочетание скорости, удобства и ощущений этого метода ввода текста, что последующие телефоны я выбирал в первую очередь по наличию полноразмерной клавиатуры. С последним клавиатурником Sony ericsson XPERIA X1 я проходил аж до конца 2016го года.
Большого морального усилия стоило решение пересесть на современный сенсорник, но программно-аппаратных мощностей windows mobile стало сильно не хватать. В итоге фактором, повлиявшем на моё решение, стало наличие OTG на новом Andriod-смартфоне, и умение создавать на базе arduino pro micro устройства ввода. Я не сдался.
Вдохновившись самой удобной из испробованных, клавиатурой P990i, я напаял на макетке тактовые кнопки, добавив два столбца для русских букв, которые обычно отправлялись на Fn-слой: Х,Ъ,Ж,Э,Б и Ю. Подключил их матрицей на pro micro и испытал в деле:
К сожалению, тот смартфон у меня прожил недолго, и все наработки пришлось переносить на новый: Xiaomi Redmi 4 Pro. Для обкатки прошивки я решил сделать чехол-клавиатуру, как из поста, на который я ссылался в начале своего. Надо повышать степень интеграции.
Заказал самые плоские и компакнтные из возможных кнопок, распаял их на макетку, закрепил с обратной стороны pro micro. Заказал у одного знакомого корпус клавиатуры на гидрорезке, у другого знакомого 3д-печать кнопок. Собрал всё воедино (Извиняюсь за дендрофекальные методы, на тот момент это был максимум моих возможностей):
В итоге получилось это:
Три кнопки над клавиатурой дублируют меню|домой|назад (Андроид понимает медиаклавиши USB-клавиатур), а при наборе текста и три секунды после ввода последнего символа превращаются в кнопки выбора вариантов завершения слов (В swiftkey ctrl+1, 2 и 3 соответственно).
Proof of concept сработал: текст набирался, кнопки под экраном работали корректно, поэтому было решено продолжать интеграцию, чтобы в итоге получить смартфон обычного (Ну или хотя бы не настолько чудовищного) веса и размера. Это должен быть вертикальный слайдер.
Я разобрал свой телефон, чтобы понять, в каком месте разделить его схему, чтобы как можно больше оставить внизу для правильной развесовки. Оказалось, что на верхней сдвигающейся части можно оставить только динамик и экран с тачскрином, раснеся их с основной платой единым шлейфом. Вооружившись копеечным USB-микроскопом, я посчитал общее количество проводников в шлейфе экрана и тачскрина, добавил два для динамика и начал поиски подходящего по длине и количеству проводников шлейфа с разъёмами. Мягко говоря, это было непросто. Подобрал такой, на 51 проводник:
Дальше мне предстояло разобраться с программой DipTrace, которую используют для создания проектов печатных плат для дальнейшего заказа. Разметил на будущей плате пятаки для кнопочных мембран, светодиодов подсветки, ардуины, соединил всё дорожками. Дальше нужно было разметить контакты для разъёмов шлейфов, которых не было в библиотеках DipTrace. Снова вооружившись микроскопом и комплектной линейкой, я начал высчитывать размеры:
В итоге получилось уместить весь проект на плате 100х100 миллиметров, для пятидолларового заказа на PCBWay:
По зелёной линии плата разрезается: часть с ардуиной и контактными площадками клавиатуры остаётся на нижней стороне телефона, к ней подпаиваются шлейфы, идущие на материнскую плату. Вторая часть отправляется на подвижную часть с экраном, к которой подключаются шлейфы от экрана, тача и провода динамика. Между первой и второй частью будет проходить пятидесятипиновый шлейф, купленный ранее.
Через месяц пришёл мой заказ:
Распаял все элементы на плате. Разъёмы тоже пришлось паять обычным паяльником, потому что от фена они деформировались. Хорошо, что был запас по разъёмам.
Ах да, герконы. Они нужны для того, чтобы подключать ардуину к телефону только тогда, когда слайдер открыт. Дело в том, что в этом проекте нет места для юсб-хаба, поэтому подключённая клавиатура забирает себе функционал юсб-разъёма телефона, не позволяя подключать флешки и заряжать телефон быстрой зарядкой. Поэтому герконы отключают не только питание ардуины, но и D+ и D-, оставляя всегда подключённым только GND.
Потерпите, осталось немного.
Я заказал новый корпус и экран, чтобы продолжить работу над проектом и не остаться без телефона. Я же всё ещё продолжал использовать его как основное устройство. Так же нарисовал в DipTrace и заказал макет шлейфа, который приводит сигналы экрана и тача от платы с клавиатурой на материнку телефона.
Вырезал в корпусе все необходимые отвестия, прикинул плату:
С обратной стороны это выглядело так:
Материнскую плату слева подразумевалось перенести в корпус справа и подключить два шлейфа от экрана и тачскрина.
Подключил экран и тач к верней плате:
Проверил, как себя будет чувствовать шлейф между половинками:
И прикинул какая будет суммарная толщина у собранного устройства. Получилось, что она увеличится примерно на три четверти от исходной:
Ииии... На этом всё. В процессе проверки оказалось, что я ошибся с распиновкой гибкого шлейфа, и при стоимости около 3500 рублей пришлось отложить проект на неопределнённый срок (Моя З/П на тот момент была 21к, большая часть которой уходила на обязательные траты). Дальше фокус внимания сместился на другое, а потом переезд, смена работы, смена смартфона, и так далее. Так этот грандиозный проект и лежит дома в столе, уже неактуальный и ненужный.
Если бы всё пошло как надо, следующим этапом было бы проектирование и заказ корпуса со слайдерным механизмом из алюминия, который должен был вклеиваться в стардартные пазы для экрана на нижней части и держать экран на верхней части. Дальше изготовление кнопочек из оргстекла (Про фотополимерную печать я узнал сильно позже), сборка всего воедино и торжественная презентация всему Интернету. Но имеем что имеем.

Отличный комментарий!

,geek,Прикольные гаджеты. Научный, инженерный и  айтишный юмор,DIY,технологии,сделал сам,нарисовал сам, сфоткал сам, написал сам, придумал сам, перевел сам,arduino,смартфоны,длиннопост

Перекидные часы

После просмотра фильма День сурка, захотел завести себе перекидные часы. И так как желание не пропало за много лет, а купить в магазине не наш выбор, то я решил сделать из сам. В ящике с деталями нашёл контроллер, накропал программу, а корпус напечатал на 3d принтере на работе. Рассыпуха на плату стоила в полтора раза дороже, чем часы в магазине, но здесь важен путь, а не цель. И так, представляю вашему вниманию... Часы. 
Небольшая история о создании самодельного 3D принтера. Пара советов.
В самом низу ссылки на проект - сделайте своими руками.

Делал я это, ни черта не зная о принтере, платах и прочем.
Опишу, что помню, с чем сталкивался, и какое решение находил.
Скажу сразу, если вам нужен просто 3D принтер - купите. Если нужен большой, масштабируемый принтер, но нет денег - сделайте. Если у вас есть принтер - напечатайте запчасти ближнему своему. Если хотите иметь возможность модернизировать, чинить, менять, просто знать как оно работает - сделайте. Если хотите просто печатать не парясь - с 3D принтерами так не получится, но лучше купить.
Ну и как пример: у человека сгорел Ender 3 (дешевая громыхалка, которую модернизировать надо в половину стоимости). Просто плата полетела. А на ней драйверы. Припаяны. Надо менять все, если сам перепаять не можешь.
Предыстория:
Собственно, напечатал себе CoreXY на напечатанный CoreXY, кой мне временно выделил незнакомец. Не смотря на то, что у меня образец был перед глазами - это была та еще возня. Так как принтер приехал разобранный, я потратил пару недель только чтобы его подключить, что весьма не очевидное занятие, учитывая, что гражданин паял провода, не парясь насчет их цветов, а результат первого подключения Arduino Mega от разных производителей +драйверов от оных же приводил к случайному результату: каретка может поехать куда угодно. Запчасти заказывал на Ozon, вместо Ali, иначе бы до сих пор собирал бы это дело.
О пластиковых деталях. Вначале я хотел использовать максимум пластиковых деталей, вроде шкивов и подшипников - не занимайтесь этим грязным извращением. Результат выйдет препаршивейшим.
О профилях. Я использовал профили 40х40, поскольку они у меня были и они халявные. Если не желаете размечать и сверлить пару сотен отверстий, лучше купите алюминиевый профиль для станков. Экономия того не стоит - убьете больше времени. Я этим занимался интереса ради - сколько всего можно не покупать. Насчет точности - она больше от натяжения ремней зависит, чем от перпендикулярности профилей.
Не используйте SBS. Мне привезли пару катушек с пластиком SBS, коим я начал печатать запчасти. Без запекания он начал расслаиваться через месяц, из-за чего пришлось все перепечатывать на Petg, когда принтер буквально разваливался и держался на кабельных стяжках
О подогреве стола и адгезии: Для Petg он не нужен. К тому же подогрев только помогает с адгезией первого слоя (прилипание). 12V просто не хватит, чтобы разогреть стол до рабочей температуры. Для хорошей адгезии - используйте стекло (не стекловолокно). Единственный его недостаток - не оторвать деталь. Потому я использую обычный карандашный клей. Следов не оставляет, приклеивается умеренно. Алюминиевую подложку можно найти нахаляву.
У Ramps платы есть проблема - при подключении высокого напряжения, пластиковые детали могут расплавиться, а пара деталей выпаяться. Потому я использую только питание для хотэнда.
О механизме подачи пластикаЯ использую Bulldog. Из преимуществ - нить не вылетает, нет переэкструзии. Из недостатков - нет переэкструзии. Т.е соплом 0.4 с шириной 0.8 и высотой 0.3 не попечатаешь. Так же нельзя печатать на скоростях 140 и прочим. +Разок мне попался брак.
О блоках питанияЯ умудрился спалить два блока питания пока не запустил принтер. Один из-за того что не стоит использовать хотэнды с неизвестными параметрами напряжения и пытаться перещелкивать фазы на коробочке, чтобы таки разогреть их. Жутко глупо получилось. На втором разорвало предохранитель.
Как спалить Arduino + RampsСамое простое решение - неправильно подключить датчики-концевики. С драйверами - плевать. А вот концевики при срабатывании приводят к неким изменениям в плате. При доле везения ее при том можно использовать. У меня перестали работать термодатчики и я долго думал что дело именно в них. Ну и экран перестает работать без USB при любом косяке.
Как попасть домойПри первом запуске каретка, если каретка поедет туда куда вы хотите - к датчикам концевикам - это будет чудо. Скорее всего вам придется переворачивать провода для драйверов, до достижения нужного результата. Хотя можно и просто концевики переместить и не париться.
Но это по XY. По Z каретка попросту не выедет на нужную высоту, что придется править в проге Pronterface:
Запускаем принтер и через меню настроек производим инициализацию EEPROM;
Подключаем слайсер и отправляем команду M851 Z0;
Вводим G28;
После хоуминга опускаем сопло, пультом управления осями в слайсере, до нужной высоты, проверяя расстояние листом бумаги А4 между столом и соплом;
После выставления нужной высоты смотрим на дисплей принтера и записываем получившуюся отрицательную высоту по оси Z, к примеру у меня Z-1,29;
Вписываем значение в команду M851 Z-1,29;
Сохраняем вписанные значения в EEPROM командой М500;
Проверяем правильность установки офсета. Отправляем команду G28, после хоуминга ложим листок на центр стола, отправляем команду G1 Z0 и проверяем листочком высоту сопла.
Об оси ZСоветую ставить 2 двигателя, иначе рано или поздно произойдет перекос, и вам придется постоянно настраивать рабочий стол, подкладывая с одной стороны монетки.
Трещины между Z слоямиТак как я использую винт, соединенный с двигателями через муфту, при печати по вертикали в масштабе 0.2 появляются трещины. Вот меры по устранению:
- Купить двигатель с винтом, отказавшись от муфт. Не пробовал, но советы поступали
- Настроит подачу пластика в Marlin. Т.е при подаче на 1см, пластика должно вылезать на 1см. Это очевидно, но я с этим не заморачивался поначалу, ибо и так работает, а отрегулировать подачу можно и программно.
- Затянуть ремни. Это слегка выровняет стенки
- Увеличить температуру. Я использую 240 вопреки советов производителей. При этом прекрасно сплавляется пластик, так что линий не видно. Единственно что 245 градусов блок питания может не вытянуть, и на 240 иногда температура "уходит". Ну и так как у меня экструдер "слабый", это помогает ему толкать пластик.
- Увеличить подачу. На 10%, посмотреть, если не устраивает, продолжать увеличивать. до 150%
- Если при 150% проблема остается - сопло засорилось.
О смене и чистке сопелТак как мне лень выкручивать сопло, я просто купил два хотенда, и поставил сопла на 0.2 и 0.4. Учитывая, что сопла из латуни - они постепенно из шестигранных превращаются в круглые.
Сопло нужно снимать при температуре большей, чем температура печати, если не хотите, чтобы пластик залил модель. Ну это понятно. Сами сопла не дорогие, и это расходник, но их можно нагреть на газовой плите до красна - весь мусор выгорит и их можно будет использовать повторно.
Перпендикулярность моделиДля проверки достаточно напечатать кубик и измерить гипотенузы соответствующих углов. Они должны быть равны. Если проблема по XY:
- Я печатал квадрат - просто пара линий. Проверял их параллельность осям. Они не параллельны, но это не страшно... Ослабил ремни и затянул из так, чтобы компенсировать искажения. Т.е один из них надо натянуть чуть сильнее, а потом аккуратно все это дело подтянуть.
Если проблема по оси Z:- С высокой долей вероятности раскрутился шкив на движке. Эта зараза может нормально работать при вас, но в процессе печати пропускать часть ремня вперед, постепенно искажая деталь.
Ну и в целом все должно быть намертво прикручено в идеале. Хотя я до сих пор забил на некоторые "лишние винтики", в конструкции.
Приостановка печати в середине печатиПричины:
- Подключение USB к ПК. Не знаю, как с блоками на 1000, но мой на 500 регулярно отключал оборудование, которое не может питать. Так что я подключаю принтер через док станцию.
- Коробка для Ардуино давит на кнопку сброса. У меня открывающийся короб, и крышка как раз напротив кнопки сброса. Отверстие для нее смещено и я в целом забил на это.
В целом о печати чужих моделей: Это касается механики и старых проектов. Если можете пользоваться, скажем, Blender, печатайте тестовые образцы для зубцов, отверстий, пазов. перспектива шлифовки отверстий в проекте, кой хотя бы 5 часов печатался - мало увлекает.
По цене: Если есть инструменты, ничего не сгорит, все получится с первого раза, не экспериментировать, да не покупать профили - можно уложиться тысяч в 20-25 на 2021год. Получите точный масштабируемый принтер с печатью хоть метр на метр. 
Ссылка:
Если у кого есть желание попытать счастье, ссылка, соответственно на проект, подключение платы, настройку прошивки:
https://www.thingiverse.com/thing:2254103
https://3d-diy.ru/blog/3d-printery/podklyuchenie-elektroniki-ramps-1-4-k-3d-printeru/
https://3d-diy.ru/blog/3d-printery/nastrojka-proshivki-marlin/

Возникнут вопросы в процессе - спрашивайте.

Какие неприятности может таить найденная флешка

Найдя незнакомый флеш накопитель, будьте осторожны, вставляя его в свой ПК. Любой USB HID контроллер поместится в корпус от флешки. Последствия могут быть очень неприятными. Для примера в ролике я набросал "мирную" программу для ATmega32u4.



При подключении к компьютеру Ардуино перехватывает управление с клавиатуры и мыши на себя, открывает окно "Выполнить", меняет раскладку клавиатуры на "EN", вызывает Paint, разворачивает его во весь экран, открывает окно "Свойства изображения", устанавливает разрешение 1280х1024, одобряет и начинает рисовать символ "@", после окончания рисования разворачивает изображение на весь экран и возвращает управление клавиатуре и мыши. Все происходит за несколько секунд.

Отличный комментарий!

помнится паста с баша, где чувак в маршрутке у кого-то на рюкзаке подрезал флешку с надписью 256, вставил себе в комп и тот пошел по пизде. чувак исправил с 256 на 257 и повесил на рюкзак себе

Дисковый Android

Бабушка хотела выкинуть старый дисковый телефон, но я ее остановил, хотя телефон мне был нужен не весь. Я еще не знал, как именно реализую сложившийся в голове пазл, но точно знал, что я это сделаю! =))
Под видео опишу вкратце, как это сделать с применением контроллера Arduino.
 
Подключение диска от советского телефона к Arduino Leonardo. (Работать будет под любой ОС)
Вместо Leonardo можно использовать любую другую плату, только в скетче надо будет применять не Keyboard а Serial для вывода результатов.
#include <Bounce.h>; //для снижения эффекта дребезга
Bounce bouncer = Bounce(2, 40);
int pulses = 0;
void setup() {
pinMode(2, INPUT);
pinMode(3, INPUT);
pinMode(13, OUTPUT);
Keyboard.begin();
}
void loop() {
while(digitalRead(3) == HIGH) { //пока идет набор
if (bouncer.update()) { //если произошло событие
if (bouncer.read()==0) { //если пришел сигнал с контактной группы
pulses++; //добавить 1 в переменную
bouncer.rebounce(500);
}
}
}
if(pulses > 0 && pulses < 10) { //чтобы в com порт шли только реальные цифры и ничего больше
Keyboard.print(pulses); //шлем в порт
pulses = 0; // обнуляем переменную
}
else if(pulses == 10) { //если с номеронабирателя пришло 10
pulses = 0; //то реальная цифра - ноль (особенности набирателя), заодно обнуляем переменную
Keyboard.print(pulses); //шлем в порт
}
}

Контроллер для авиасимуляторов своими руками

Привет, Реактор! Выношу на Ваш суд разработку контроллера для авиасимуляторов, спроектированную и собранную мной и двумя моими товарищами.

Контроллер авиасимов на Arduino Micro + инерционный трекер на Arduino Nano с акселерометром GY-85 + VR-Box. Пока что первая, сырая, но, тем не менее, уже эффектная версия. Многое еще подлежит переделке, но впечатлений и эмоций очень много.

Узел Педали+РУС начерчен и изготовлен из стали при помощи плазменной резки, всё на подшипниках и газ-лифтах. Оси на датчиках Холла. РУД временно собран из Lego и потенциометра на 10КОм. Рукоятка РУС начерчена и распечатана на 3д принтере.

В WarThunder показания приборов тянутся из игры и выводятся в WEB-интерфейс.

Пока из очевидных недостатков тяжелая ручка управления самолетом с большим ходом. Во первых масса не дает работать возвратным пружинам корректно срабатывать (при сборке под руку подвернулась стальная толстостенная труба, далее будет алюминиевая), во вторых ручка, вероятнее всего, будет укорочена, а механизм джоя поднят выше и уменьшен диапозон свободного хода, пока же трубой стучим по коленям)) Зато ручка "быстросъем", на защелках от пневматики.

Как сделать трекер, хорошо описано во многих статьях в рунете, а в софтвенной части контроллера нам очень помог проект MMJOY2.

Вот, получился такой небольшой сумбур, первопост всё-таки.
,arduino,3D печать,робототехника,своими руками,авиасимулятор,Инерционный трекер,длиннопост,War Thunder,Игры

Большая Карамельная Ракета

Всем привет! 

Меня зовут Илья и у меня есть хобби - это любительское ракетостроение. Точнее даже, скажем так, карамельное ракетостроение. За то время, что я занимаюсь темой, я успел набить себе немало шишек, во многом действуя по наитию и ставя различные, часто неудачные, эксперименты. Возможно, кто-то скажет, что я криворук и это не моё, что нужно срочно учить матчасть, что всё придумано до меня. И, пожалуй я соглашусь. Но, на мой взгляд, в любительском ракетостроении, как хобби, важен сам процесс инженерных поисков. Решение возникающих проблем и, конечно, создание себе новых. Наверное было бы проще взять уже готовую модель, заправить её готовым двигателем и…Но если бы действительно этим путём пользовались все, то наверное не было бы и развития. 
Ракетостроение, даже не ракетомоделизм из кружков (Model Rocketry или High Power Rocketry), пожалуй отличное хобби для технаря, и, конечно айтишника. Даже сам Джон Кармак (один из создателей Doom, кто не знает) в детстве занимался ракетостроением, что уже после id Software переросло в свою ракетную компанию Armadillo Aerospace.
 И таких, как он и я, к счастью не единицы. Хотя и совсем немного по земному шару. Наверное это из-за трудоёмкости, спектра проблем из разных научных областей. У той же Амперки в серии «Ракета против Лёхи» по официальной версии всё закончилось как раз из-за отсутствия возможности столько вкладывать ресурсов. Потому что процесс создания любой ракеты - это череда неудач, начала сызнова и итеративное приближение к цели. И к новой. И к ещё одной. 
 Для меня увлечение ракетами началось с
. Сама простота и дешевизна такой «ракетой техники» меня подкупила и я решил воспроизвести этот эксперимент. Собственно тогда родилась цель - сделать такую ракету, которая бы взлетела метров на 300-400, ну, до полкилометра, и спокойно бы вернулась обратно на парашюте. С полезной нагрузкой: скажем, с небольшим бортовым компьютером и камерой. Всё тогда казалось просто, если бы не нюансы, коих было… много… 
Конструкция ракеты 
Конструкции большинства ракет в основном схожи между собой. Они удовлетворяют в большинстве случаев, так скажем, идеальной "эмпирической ракете": 
- длина ракеты полная: L= 15~25 D 
- длина головного обтекателя: Ln = 2.5~3.5*D 
- размах стабилизатора: S = 1~2*D 
- общая площадь стабилизаторов: F= 0,7~0,8*A, где A=L*D - площадь продольного сечения корпуса, 
- запас устойчивости: k = 1,5~3*D 
D
Рис.1,Ракета,карамель,ракетостроение,DIY,arduino,песочница
В зависимости от поставленных целей и используемых компонентов параметры ракеты могут варьироваться, конечно же, но почти всегда укладываются в вышеобозначенные границы. В моём случае размер ракеты будет определяться исходя из размеров двигателя, парашюта и электроники. Чтобы уместить всё в корпусе ракеты я использую трубу диаметром в 50мм. Трубу можно сделать, в идеале, из стеклопластика, а можно взять ПП канализационную трубу - она сравнительно прочная и лёгкая. Головной обтекатель так же делается из этой же трубы - вырезается "корона" (длиной в 2-3 диаметра ракеты) и склеивается вместе, образуя параболическую форму. Хотя, конечно есть и другие варианты - выточить обтекатель из деревянной заготовки на токарном станке или распечатать его на 3D-принтере. Обтекатель должен быть максимально правильной формы, гладким - это необходимо для снижения аэродинамического сопротивления ракеты и снижения вредных срывных течений в носовой части ракеты.  
Стабилизаторы стоит изготавливать из достаточно лёгкого, но прочного материала. Например пластика, фанеры или бальзы. Форма и размер стабилизаторов зависят от размеров ракеты, а если быть точным, то от расположения центра тяжести ракеты и центра давления. 
,Ракета,карамель,ракетостроение,DIY,arduino,песочница
Ракета никогда не летит прямо, а все время поворачивается от направления полета то в одну, то в другую сторону, т.е. рыскает. На ракету набегает встречный поток воздуха, направление которого строго противоположно направлению полета. Получается, что ракета все время поворачивается боком к набегающему потоку на некоторый угол. В аэродинамике такой угол называется углом атаки. Мы уже установили, что ракета, как любое твердое тело, поворачивается относительно ЦТ, но результирующая сила давления воздуха приложена совсем к другой точке, т.е. к ЦД. Если ракета имеет симметричную форму относительно оси, то ЦД потока воздуха расположен на оси ракеты. Если ЦД расположен ближе к хвосту ракеты, то давление воздуха стремится вернуть ракету навстречу набегающему потоку, т.е. на траекторию. Ракета будет устойчива. Тут вполне допустима аналогия с флюгером. Если ракету насадить на стержень, проходящий поперек оси ракеты через ЦТ и вынести её на улицу, где сильный ветер, то устойчивая ракета повернется навстречу ветру. Из этих же соображений делается простейшая проверка ракеты на устойчивость с помощью веревки: привязываем веревку к ракете в месте расположения центра тяжести и начинаем вращать ракету вокруг себя. Если ракета при вращении ориентируется строго по направлению движения, то она аэродинамически устойчива, если ракету крутит в разные стороны или она летит хвостом вперед, то ракета неустойчива. 
 Центр тяжести ракеты определяется простым методом "взвешивания". Положив ракету на руку, нужно найти точку, в которой достигается равновесие. 
 Центр давления рассчитывается используя метод определения центра давления по Борроумену. К слову сказать, есть и другой, хотя и куда менее точный способ определения центра давления - метод аэродинамической проекции. В любом случае, какой бы мы метод не использовали, чтобы ракета была устойчивой, расстояние между центром тяжести и центром давления должно составлять хотя бы 1,5 диаметра самой ракеты. Эта, так называемая "устойчивость в диаметрах" может быть и выше, хотя устойчивость больше 2-2,5 диаметров не рекомендуется, так как в этом случае стабилизаторы будут больше, а значит тяжелее. Кроме того, большая площадь стабилизаторов приведёт к тому, что ракета будет испытывать большие боковые нагрузки, что приведёт к тому, что она будет, как флюгер разворачиваться по ветру и лететь не вверх, а вбок; в худшем случае - флаттер приведёт к разрушению ракеты в полёте. Подробно об устойчивости можно почитать здесь
Есть готовые программные решения для расчёта параметров ракеты. Я использую Rocki-design, но чаще, тем более в англоязычном мире используют OpenRocket. Подобрав нужный размер стабилизаторов, вырезаем их из заготовки и прикручиваем винтами к корпусу, используя металлические уголки. Крепление должно быть жёстким. Для лёгких ракет сгодится и просто приклеивание, но для тяжелой ракеты лучше перестраховаться. 
Система спасения 
Система спасения - одна из самых сложных в ракете. Она включает в себя парашют, крепление к корпусу, а так же механизм выброса парашюта. Она в обязательном порядке порядке должна быть проверена не один раз на земле. Я использую пиротехнический вариант выброса парашюта (мортирка), инициируемый бортовым компьютером. Хотя встречаются и другие решения - механические и пневматические, или вовсе инерционные. Пиротехническая система одна из самых популярных и простых, содержит минимум компонентов. 
Сам парашют - это купол диаметром в 70 сантиметров, сшитый из прочной и лёгкой ткани (рип-стоп). Можно рассчитать точно необходимую площадь парашюта для плавного спуска в зависимости от массы ракеты. Хотя, из практики, парашют лучше делать меньше диаметром - это увеличит скорость падения ракеты, конечно, но ракету будет меньше сдувать ветром, и поэтому меньше шансов намотать километры от места запуска до места падения. 
Не менее важно обеспечить крепление ракеты с корпусом. Обычно в корпус устанавливаются силовые болты, к которым привязывается силовой трос (фал), соединяющийся со стропами парашюта. Фал пропускается через пыж - лёгкий цилиндр, который впритирку устанавливается ко внутреннему диаметру ракеты - он необходим для выброса парашюта, работая как поршень, приводимый в движение газами из мортирки. 
Головной обтекатель так же подвязывается к фалу. 
,Ракета,карамель,ракетостроение,DIY,arduino,песочница
 В сборе внутренние компоненты ракеты ракеты занимают весь внутренний объем. 
Двигатель 
 В отличие от ракетомоделизма, в любительском, "карамельном" ракетостроении используются собственно изготовленные двигатели. Ракетные двигатели - это долгий и обширный разговор, который можно растянуть на не одну статью. Если рассказывать очень кратко, то в любительском ракетостроение в большинстве случаев используются твердотопливные двигатели, которые по конструкции очень схожи с двигателями настоящих твердотопливных ракет. Отличие состоит в материалах из которых изготовлен двигатель и в используемом топливе. Чаще всего для изготовления двигателей используется бумага, пластик или композит (стеклоровинг). В моём случае - пластик (полипропиленовая армированная труба в 40мм внешним диаметром). В качестве топлива используется смесь из калиевой селитры и сахара\сорбита в пропорции 65\35. Собственно при плавлении такой смеси образуется сладкая масса (несъедобная!), похожая на карамель, откуда и происходит название "карамельное топливо". 
 C6H14O6 + 3.345 KNO3 -> 1.870 CO2 + 2.490 CO + 4.828 H2O + 2.145 H2 + 1.672 N2 + 1.644 K2CO3 + 0.057 KOH 
 Топливо запресовывается в так называемые "топливные шашки" - цилиндры с отверстием. Размер шашек подбирается таким образом, чтобы во время работы двигателя топливо успевало выгореть равномерно во всех направлениях (в направлении от внутреннего канала к краю). Оптимальной длиной шашки внешним диаметром D и внутренним диаметром d является длина L=1.67D. Шашки в обязательном запрессовываются\оборачиваются в так называемую "бронировку" - внешнюю негорючую оболочку шашки. Бронировка препятствует горению шашки по внешней поверхности, что недопустимо. Слишком большая площадь горения топлива может привести к разрушению двигателя. 
,Ракета,карамель,ракетостроение,DIY,arduino,песочница
Из шашек формируется сборка двигателя с единым топливным каналом. При этом шашки укладываются в теплоизоляционную (негорючую) трубку из тефлона\бумаги, пропитанной силикатным клеем. Теплоизоляция нужна для того, чтобы не допустить разрушения двигателя из-за температуры (фронта горения и горячих газов) при горении топлива. 
,Ракета,карамель,ракетостроение,DIY,arduino,песочница
Карамельное топливо горит сравнительно медленно, поэтому для создания тяги зажигание двигателя производится в дальней точке канала (противоположного от сопла). Немаловажными параметрами двигателя, кроме тяги, является критика сопла и рабочее давление. Чем больше давление в двигателе - тем больше тяга. Чем больше давление - тем выше скорость горения топлива. Настоящим вызовом в создании двигателя является задача создания такого решения, которое при минимальной массе корпуса будет держать максимальное давление и содержать наибольшее количество топлива. 
Рн
Тяга
о
0,5
1
1,5
2,Ракета,карамель,ракетостроение,DIY,arduino,песочница
Р МРа
Давление в камере
I сек,Ракета,карамель,ракетостроение,DIY,arduino,песочница
 Для расчёта двигателя используются расчёты на основе закона горения. Безусловно, есть готовые решения для расчёта параметров двигателя. 
Кроме того, обязательно проводятся стендовые испытания движков. Это позволяет отработать надёжность двигателя на земле, а так же снять реальные показания тяги двигателя (которые могут отличаться от расчётных). 
Электроника 
В качестве бортового компьютера я использую собственную схему, в основе которой находится Arduino Nano. 
Компоненты: 
- Барометр BMP180 
- Гироскоп-акселерометр MPU6050 
- Пищалка (piezo buzzer)
- microSD модуль 
- Реле\MOSFET для активации запала мортирки 
- 2 шт. 18650 аккумуляторов 
- LM7805 для понижения напряжения для контроллера 
- Мини-тумблер для включения компьютера 
- Разъем JST-2P для соединения с запалом мортирки 
 При запуске компьютера инициализируются все датчики и модули, записывается текущая высота, подаётся звуковой сигнал перехода в режим ожидания старта. Моментом старта считается случай изменения высоты на пороговое значение (например 5 метров). 
 В момент старта фиксируется (записывается время), далее на карту начинают записываться данные с датчиков. В процессе полёта отслеживается апогей - записывается текущая высота, если она меньше предыдущей. Если текущая высота падает на пороговое значение, активируем вышибной заряд. Момент приземления не вычисляется, просто считаем, что через две минуты ракета должна сесть на землю. Через две минуты останавливается запись на карту и начинается подача звуковых сигналов для облегчения поиска ракеты.Полный скетч можно найти тут
Полёт и результаты 
Характеристики собранной ракеты: 
- Длина: 1300 миллиметров 
- Диаметр: 50 миллиметров 
- Масса корпуса (со всеми компонентами): 1000 грамм 
- Масса электроники: 180 грамм 
- Масса двигателя: 440 грамм 
- Масса полная: 1620 грамм 
- Двигатель: ДКР-30-9-280-ПЭ(С) 
- Класс: H115, максимальная тяга - 180 Н*с 
- Расчётный (максимальный) апогей: 530 метров 
- Время до апогея: 11,5 секунд 
На фото - взлёт ракеты.
 Полёт в целом получился успешным, ракета достигла апогея в 400 метров. 
,Ракета,карамель,ракетостроение,DIY,arduino,песочница
Ракета села с парашютом в 200 метрах от места старта. 
Любопытно, что на данных с акселерометра видны всплески, соответствующие работе системы спасения (мортирки). 
12
122
123
124
125
126 127 123
129
130
131
132
133
134
135
136
137 133
139
140
141
142
143
144
145
146
147 143
149
150
151
152
153
*1 АЛЛ А А О /“ А '■? А
П А *1 АЛЛ Г\,Ракета,карамель,ракетостроение,DIY,arduino,песочница
В итоге... 
проект у меня занял целый год в неспешном режиме. Это отличное хобби, которое позволяет столкнуться с огромным разнообразным спектром задач из разных областей. Это и физика, химия, электроника, программирование, инженерия и технология изготовления, включая токарные работы. И, конечно, позволяющее получить незабываемые эмоции от рёва гула у взлетающей ракеты, до трепета и переживаний во время поиска ракеты и снятия показаний с логгера.
Продолжать писать про ракеты?
Да, однозначно
185(89,81%)
Я просто подпишусь на канал
5(2,43%)
Нет, это не интересно
16(7,77%)

Фотодиод + Arduino + сервопривод

Отличный комментарий!

До первого птеродактиля

Arduino severino и руки школьника

Вот такой девайс отрыл в ящике. Был скрафчен мною ещё в бытность школотой. Плата сделана даже не из стеклотекстолита, а из гетинакса, найденного в какой-то масляной луже гаража. А чтобы плата не была такой скучной, была покрашена аэрозольной краской. Плата перетравлена, было решено напаять куски медной проволоки. Самое интересное, что это дерьмо работает. Ну, работало, по крайней мере.
С МКшником всё тоже зашибись, атмеги в DIP-корпусе в магазине не было:


Робот, напечатанный на 3Д принтере, способный подлезать под дверь






Дизайн основан на роботе, сделанном в 2013 году в  Biomimetic Millisystems Lab, UC Berkeley

Вакенштейн

Купил я, значицца, Wacom Bamboo M, чтобы помочь M_10th с рисованием нашего комикса, и в первый же день ощутил ОСТРУЮ нехватку кнопок на нем (туда обычно забиваются всякие хоткеи типа Ctrl+Z, зума и прочего). Думал, что буду левую руку держать на клавиатуре, но оказалось дико неудобно (это мой первый планшет, нисудите строга). Кнопки есть либо на планшетах более мелкого размера, либо на более дорогих. Что делать? Сдать по гарантии и купить другой, что подороже?.. Не, это не наш метод. Наш метод - взять паяльник в зубы.
Идея проста, как три копейки. Берем ворох кнопок, энкодер, любую мелкую ардуину и делаем из нее клавиатуру. Варианта у нас два: если у нас Arduino Micro, то она может изображать обычную USB-клавиатуру с помощью стандартных библиотек. Второй вариант - изобразить из себя PS/2-клаву на двух проводах (протокол и интерфейс там ну очень простой) и использовать чип из китайского конвертера PS/2->USB, чтобы в итоге так же стать USB-клавиатурой. Так уж вышло, что Arduino Micro у меня не нашлось, и поэтому я реализовал именно второй вариант.
Конструкция должна прицепляться с левой стороны планшета, там, где обычно у художника лежит рука. Прямо под пальцами нужно разместить кнопки, чтобы забиндить на них нужные хоткеи, а под большим и указательным разместить энкодер - круглую хреновину, которую можно крутить в разные стороны (им предполагалось сделать зум). То, что получилось ниже - первый прототип, спаянный за вечер, с прошивкой, написанной на коленке.
Кнопки и колесо эмулируют нажатия клавиатурных шорткатов Paint Tool SAI - конец вектора, вращение холста, отмену; колесо зумит картинку; крестовина нужна для того, чтобы двигать холст; кнопки ниже отвечают за Ctrl, Shift и за Ctrl+S. Конструкция приклеивается к планшету двусторонним скотчем. Сам планшет подключается к этой плате через USB, на плате прикручен хаб, к которому припаян конвертер PS/2->USB, к которому подключена ардуина. Таким образом, все просто и красиво одним кабелем подключается к компу. Вид снизу:

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

Работает на винде и на линуксе без плясок с бубном. В планах закрыть кишки какой-нибудь панелькой. Пользуюсь уже пару недель, и все не нарадуюсь - при рисовании руки на клавиатуру теперь почти не перекладываю, все самое нужное (и даже ненужное) забито на кнопки. Итого, два вечера и тысяча рублей - и ваш нубский Bamboo превращается в Intuos с раскладкой индивидуально под вашу руку :-)

The Beatles - Yellow Submarine на матричном принтере


Дошли руки, и пересобрал свой контроллер для игры музыки на матричном принтере. Пока умеет всего в 2 MIDI-канала, но скоро будет больше.
КАРМАДРОЧЕР The Game - игра созданная под впечатлением от джоя и его обитателей, немного подробностей в комментах.

Здесь мы собираем самые интересные картинки, арты, комиксы, мемасики по теме arduino (+41 постов - arduino)