Разделы сайта
Выбор редакции:
- Клаус Джоул Пьяный лепрекон
- Критерии выбора системы электронного документооборота
- Константин Анохин: Мозг и разум Учёные и художники: глаза в глаза
- Проект по внеклассному литературному чтению "весна глазами поэтов, писателей, художников"
- Что относится к трансжирам
- Бурсит тазобедренного сустава лечение препараты Что такое бурсит тазобедренного сустава
- Сонник: к чему снится Покойник
- Журнал кассира операциониста и его заполнение Журнал кассира операциониста титульный лист
- Рецепт: Татарские салаты
- Морской окунь, запеченный в фольге
Реклама
Серая коробочка радиодеталей. Хронометр для пневматики своими руками |
Давно имею старенькую компрессионную пневматику ИЖ-53. Купил лет 7 назад с рук за смешные деньги. Cразу поставил ему новую прозрачную манжету и новую пружину от винтовки, укоротив несколько витков, сколько - за давностю лет не помню. Сегодня забрел на один форум, где все занимаются разгоном пневматического оружия и за пару часов проглотил всю ветку по ИЖам. Сразу загорелось померять скорость пули, поэтому слил прогу AirSpeed и почитал про датчиков из фольги. Вот тут-то меня ленью и накрыло. Не люблю дурную работу, которую приходится по несколько раз переделывать. А с датчиками из фольги так бы и получилось, после одного-двух выстрелов восстанавливать всю конструкцию - нет уж, увольте. Посмотрел на схемы покупных хронометров - тоска зеленая с прошивками, ПИКами и двусторонними платами. Технология ЛУТа знакома не по наслышке, но ради десятка выстрелов делать себе геморрой на неделю - не хочу. Сразу пришла идея объединить эти две идеи. Сделать простейшие оптические датчики из оптопар и совместить их с прогой AirSpeed. Ну-с, начнем!. Схему набросал уже к этому описанию, но может кому пригодится до начала сборки Покупного в моей конструкции на ноль рублей, но только потому, что всякий электронный хлам у меня всегда валяется дома. Да, самое главное! Поставь один из последних альбомов Пикника, а то нифига не получится Кусок трубки 15 сантиметров - ПВХ труба для горячей воды (Можно любую с подходящим диаметром) Внутренний диаметр у нее 11,5мм у ствола внешний 11 - подойдет с домоткой Сверлим две сквозных дырки на ровном расстоянии в 100 мм. Верхние под фотодиоды от старой мыши - 3 мм. (Смотрим на свои штангелем и сверлим свой размер). Нижние под белые светодиоды от старого фонарика - 5 мм. (Опять же смотрим на свои). Я перед монтажом убедился, что светодиоды и фотодиоды друг другу подходят - припаял к проводу, воткнул в микрофонный вход компа, накрутил громкость и быстро пронес светодиод мимо фотодиода, услышал звук в колонках - все тип-топ. Втыкаем в соответствующие отверстия свето- и фотодиоды. Припаиваем к ним провода. Сразу надо определиться с источником питания светодиодов. Им надо не менее 3 вольт и не более 20 ма. Я взял один LiIon элемент от ноутбука, он дает 3,7 в. Светодиоды в этом случае включаем через резистор 820 Ом, подойдет любой из диапазона 470-910 Ом. Можно светодиоды питать и от двух любых 1,5вольтовых пальчиковых батарей. Их заряда хватит на год точно При таких сроках эксплуатации я рекомендую элементы питания просто припаивать не заморачиваясь на кроватки, разъемы и прочие удобства. Паять надо быстро, чтобы не перегреть элемент. Сразу же после пайки нежных и тонких выводов фотодиода заливаем сопливым пистолетом. чтоб ненароком не оторвать. Проверить работу на этапе пайки легко - при включении питания щелчек должен быть в обоих колонках. При пропускании пульки через вертикально поставленную трубку отчетливо должны быть слышны два щелчка в колонках. Если щелчков нет при включенном канале микрофона и выкрученной на максимум громкости - меняем полярность проводов на фотодиодах. "А внутре у нее неонка!" Думаю, что если отстрелится линза у свето- или фотодиода - ничего страшного не будет. Все продолжит работать как и раньше. Так, как моя трубка была больше диаметра ствола - на ствол одел кусок термоусадки и плотно натянул датчик - соосность видно со стороны казенника с включенными светодиодами прекрасно. На фотке сам пистолет и пулеуловитель из картонной коробки с бумажным хламом внутри. На все ушло два часа. Основное время потратил на неторопливое попивание пива и поиск подходящих фотодиодов. Теперь можно проводить испытания. Результат работы виден на скриншоте. выстрелы 117 м/с, последующие падаот до 106 м/с. Затесавшийся глюк с 400 м/с просто игнорируем - хотя было бы неплохо ))))) Данные получены на турецких пулях ORNEK весом 0.42 г. На фотографии показания весов для 100 шт. без учета веса тары. Для нифига не апгрейднутого и не герметичного пистолета довольно неплохие показатели. Дым из ствола идет постоянно. Можно начинать апать Думаю, что для огнестрела тоже можно использовать данную конструкцию, надо только брать металлическую трубку гораздо большего диаметра, чем ствол. И не крепить ее к стволу, а стрелять в нее просто так, с подставки или с рук. Плюс ко всему для точности увеличить длину до одного метра. Короче, берется водопроводная труба 100 мм диаметром и длиной 1100 мм. И все будет работать. Кому нужна прога - качаем http://www..rar Downloads: Еще две прекрасные программы от Миронова. http://www..rar Downloads: Хронограф – универсальный прибор для измерения скорости полета небольших предметов. Наиболее функциональными и удобными для тестирования и настройки пневматического оружия оказались рамочные хронографы. С их помощью можно установить скорость не только пули, но и стрелы, арбалетного болта или запущенной из рогатки скобы. Конструкция аппарата включает рабочую зону, через которую пролетает пуля, вычислительную схему и дисплей для визуализации полученных результатов. Принцип действия прибора состоит в фиксировании времени, которое требуется пуле для пролета известного отрезка между двумя или несколькими датчиками, и последующий расчет ее средней скорости (расстояние делится на время). Существуют различные схемы хронографа, отличающиеся функциональностью, дизайном и ценой реализации.
Самые простые датчики, реагирующие на пролет пули и доступные для обывателя, работают за счет изменения интенсивности падающего на них света (пролетающая пуля отбрасывает тень). Именно светочувствительные элементы применяются в конструкциях большинства самодельных и серийных приборов. Преимущества самодельного рамочного хронографа для со световой схемой:
Недостатки:
Фото самодельного рамочного хронографа
Главная причина популярности рамочных хронографов – универсальность в эксплуатации и возможность использования с любым типом оружия. Необходимый материал и деталиДля сборки хронографа требуется ряд устройств и инструментов. Их полный перечень зависит от навыков пользователя по проектированию и монтажу электрических схем. Обязательно понадобятся следующие компоненты:
Порядок сборки хронографаПеред тем как ответить на вопрос, вроде как сделать рамочный хронограф для пневматики своими руками, следует подготовить корпус к установке датчиков и элементов микросхемы, которые должны быть защищены или расположены в местах, недоступных для попадания пули. Изнутри корпус рекомендуют окрасить темной небликующей краской, поглощающий свет. Это уменьшит число ложных срабатываний и повысит чувствительность прибора.
В заранее подготовленные отверстия в корпусе устанавливаются светодиоды и светочувствительные элементы. Светодиоды должны немного выдаваться во внутреннюю полость хронографа, а фотоприемники – быть слегка заглубленными, чтобы уменьшить интенсивность падающего внешнего освещения. После установить плату, подключив ее к датчикам и подготовив места ввода питания. Если есть желание составить микросхему самостоятельно, минуя привлечение сторонних специалистов, можно использовать следующую схему (рис. 1). Рис. 1 Микросхема хронографа
После сборки основных узлов необходимо закрыть электрическую схему прибора, обезопасив ее от механического воздействия и случайного попадания влаги. Это удобнее всего сделать, предусмотрев заранее отдельный пластмассовый коробок для печатной платы, имеющий выходы к дисплею, датчикам и батарее. Принцип действия самодельного хронографаПитание прибора может осуществляться от аккумуляторов, батареи или блока питания (от сети). Наиболее удобна автономная работа, поскольку наладку оружия не всегда можно провести в домашних условиях. Измерение скорости производится в несколько этапов:
Схема действия рамочного хронографа
В своей первой публикации я хочу рассказать вам, как я собрал хронограф за пару вечеров из дешевых и доступных всем деталей. Как вы наверное уже догадались из названия, этот девайс служит для измерения скорости пули у пневматических (и не очень) винтовок и бывает полезным для контроля её технического состояния. 1. Детали и принадлежности
1.1. DigisparkПредставляет собой простую миниатюрную Arduino-совместимую плату с ATtiny85 на борту. Как подключить к Arduino IDE читаем на официальном сайте проекта , там же можно найти драйвера для нее. Существует два основных вида этой платы: с microUSB и более брутальный с USB коннектором, разведенным прямо на плате.Мой хронограф не имеет собственного источника питания, поэтому я выбрал первый вариант платы. Встроенная батарейка/аккумулятор сильно повысит цену, не добавив при этом практически ничего к юзабилити. Power bank и кабель для зарядки телефона валяется практически у каждого. Характеристики
само собой унаследованы от ATtiny85, его возможностей в нашем случае достаточно с головой. Фактически МК в хронографе не делает ничего, кроме опроса двух датчиков и управления дисплеем. Для тех, кто впервые сталкивается с Digispark-ом, я свёл наиболее важные особенности в таблицу: 1.2. Дисплей на базе TM1637Следующая важная деталь - цифровой дисплей, на который будет выводиться информация. Дисплей можно использовать любой, мой выбор обусловлен только дешевизной и простотой работы с ним. От дисплея в принципе можно вообще отказаться и выводить данные по кабелю на ПК, тогда девайс станет еще дешевле. Для работы понадобится библиотека DigitalTube . Сабж, на который я дал ссылку в начале поста, представляет собой клон дисплея Grove . Вид спереди:Между цифрами расстояние одинаковое, поэтому при выключенном двоеточии числовые значения читаются нормально. Вместе со стандартной библиотекой поставляется пример, который работает с Digispark-ом без плясок с бубном: Все, что умеет стандартная библиотека, - выводить числа 0-9 и буквы a-f, а так же менять яркость всего дисплея целиком. Значение цифры задается функцией display(int 0-3, int 0-15). Экспресс-курс по использованию дисплея // 1. Объявить заголовочный файл
#include Если попытаться вывести символ с кодом за границами , то дисплей показывает чушь, которая при этом не статичная, поэтому схитрить для вывода спецсимволов (градусов, минуса) без бубна не получится: Это меня не устраивало, так как в своем хронографе я хотел предусмотреть вывод не только скорости, но и энергии пули (вычисляемой на основе заранее прописанной в скетче массы), эти два значения должны выводиться последовательно. Чтобы понять, что показывает дисплей в данный момент времени, нужно как-то разделять эти два значения визуально, например, при помощи символа «J». Конечно, можно тупо задействовать символ двоеточия как флаг-индикатор, но это же не тру и не кошерно) Поэтому я полез разбираться в библиотеку и на базе функции display сделал функцию setSegments(byte addr, byte data), которая зажигает в цифре с номером addr сегменты, закодированные в data: Void setSegments(byte addr, byte data)
{
tm1637.start();
tm1637.writeByte(ADDR_FIXED);
tm1637.stop();
tm1637.start();
tm1637.writeByte(addr|0xc0);
tm1637.writeByte(data);
tm1637.stop();
tm1637.start();
tm1637.writeByte(tm1637.Cmd_DispCtrl);
tm1637.stop();
}
Теперь можно легко сделать так: Let"s say HELLO #include 1.3. ДатчикиТут я, к сожалению, не могу ничего особо сказать, потому что на странице товара нет ни слова о характеристиках или хотя бы маркировки, по которой можно было бы откопать даташит. Типичный noname. Известна только длина волны 940нм.Ценой одного светодиода определил, что ток больше 40мА для них смертелен, а напряжение питания должно быть ниже 3.3В. Фототранзистор немного прозрачный и реагирует на свет 2. Подготовка деталей и сборкаСхема очень простая и незамысловатая, из всех пинов digispark-a нам понадобятся только P0, P1 - для работы с дисплеем, а так же P2 - для работы с датчиками:Как видно, один резистор ограничивает ток на светодиодах, второй - стягивает P2 к земле. Фототранзисторы соединены последовательно, поэтому прохождение пули перед любой оптопарой приводит к уменьшению напряжения на P2. Путем регистрации двух последовательных скачков напряжения и замера времени между ними мы можем определить скорость движения пули (зная расстояние между датчиками, ессно). Использование одного пина для замеров имеет еще один плюс - нет никакого требуемого направления движения пули, можно стрелять с обоих концов. Собирать будем из этой горстки деталей: Я пошел по пути миниатюризации и решил сделать бутерброд при помощи куска макетной платы: Весь бутерброд залил термоклеем для прочности: Остается только разместить датчики в трубке и припаять провода: На фото видно, что я разместил дополнительный электролит на 100мКф параллельно светодиодам, чтобы при питании от повербанка не было пульсаций ИК диодов. Пин P2 в качестве входа был выбран не просто так. Напомню, что P3 и P4 используются в USB, поэтому использование P2 дает возможность прошивать девайс уже в собранном виде. Во-вторых, P2 - аналоговый вход, поэтому можно не использовать прерывания, а просто мерить разницу в цикле между предыдущим и текущим значением на нем, если разница выше некоторого порога - значит пуля проходит между одной из оптопар. Но есть одна программная хитрость, без которой приведенная схема не взлетит, о ней поговорим далее. 3. Прошивка3.1. Пару слов о prescalerPrescaler представляет собой делитель частоты, по-умолчанию в arduino-подобных платах он равен 128. От значения этой величины зависит максимальная частота опроса АЦП, по дефолту для 16 мГц контроллера получается 16/128 = 125 кГц. На каждую оцифровку уходит 13 операций, поэтому максимальная частота опроса пина - 9600 кГц (в теории, на практике реально не выше 7 кГц). Т.е. интервал между замерами примерно 120 мкс, это очень и очень много. Пуля, летящая со скоростью 300 м/с пролетит за это время 3,6 см - контроллер просто не успеет засечь факт прохождения пули через оптопару. Для нормальной работы нужен интервал между замерами как минимум 20 мкс, необходимое значение делителя для этого равно 16. Я пошел еще дальше и в своем девайсе использую делитель 8, делается это следующим образом: #ifndef cbi
#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit))
#endif
#ifndef sbi
#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit))
#endif
void setup() {
sbi(ADCSRA,ADPS2);
cbi(ADCSRA,ADPS1);
cbi(ADCSRA,ADPS0);
...
}
3.2. Итоговый скетчЯ не буду подробно описывать код, он и так хорошо задокументирован. Вместо этого я в общих словах опишу алгоритм его работы. Итак, вся логика сводится к следующим этапам:
Собственно, весь код /*
* Хронограф для измерения скорости движения пули, SinuX 23.03.2016
*/
#include 4. Примеры работыПри правильном подключении девайс взлетел практически сразу, единственный обнаруженный недостаток - он негативно реагирует на светодиодное и люминисцентное освещение (частота пульсаций около 40 кГц), отсюда могут появляться спонтанные ошибки. Всего в девайсе предусмотрено 3 режима работы:Приветствие после включения и переход в режим ожидания выстрела (экран заполняется полосками): В случае ошибки - отображается «Err», и снова переход в режим ожидания: Ну и сам замер скорости: После выстрела сначала показывается скорость пули (с символом "n"), затем - энергия (символ "J"), причем энергия вычисляется с точностью до одного знака после запятой (на гифке видно, что при показе джоулей горит двоеточие). Корпус покрасивее найти пока не смог, поэтому просто залил все термосоплями: Пожалуй, на этом у меня все, надеюсь, кому-то был полезен. Владею пневматической винтовкой, всегда была интересна скорость вылета пули из ствола, это кому-то покажется странным, но у пневмолюбов скорость пули одна из главных тем для членометрии. Погуглив немного нашел несколько вариантов схем на разных микроконтроллерах, так как у меня уже был работы с AVR, без раздумий выбрал вариант на avr. Все необходимые детали я нашел на упоминавшемся уже здесь Taydaelectronics.com. Покупка собрана, оплачена, получена, приступим… Сразу приложу схему: Итак, нам понадобится: Повторил схему в протеусе, подогнал под свои нужды, и вытравил печатную плату Кое-как расставил компоненты, чтобы иметь примерное представление, как рисовать дорожки. И да, у меня нет принтера, я рисую дорожки перманентным маркером))) Сначала пробую на бумаге Потом переношу на текстолит Травим. Травлю в горячем растворе хлорного железа, разведенного примерно 1:3 с водой. После травления раствор храню на балконе, он работает даже после высыхания, нужно просто добавить воды. Следует осторожничать и не допускать попадания его на металлические поверхности - начнется усиленная коррозия. Чистим Сверлим. Дрельку делал из патрона и моторчика с фасттека. Вот все компоненты запаяны на плату, осталось только прошить микроконтроллер ОНО ЖИВОЕ! После этого я изготовил измерительную трубку с датчиками. Устроено просто - на расстоянии 50 мм друг от друга находятся расположенные друг напротив друга фототранзистор и светодиод, своеобразные оптопары. Когда пулька пролетает по трубке, она поочередно перекрывает луч света первому и второму транзистору, о чем они сигналят микроконтроллеру, который высчитывает скорость по всем известной со школы формуле. исходный код /* #define F_CPU 1000000UL
#include #define LED_EMPTY ~0b00000000
#define LED_0 ~0b00111111
#define LED_MINUS ~0b01000000 #define BASE_LENGTH 1000 Typedef struct LedPanel { Void renderSegmentNext() { Switch (activeSegment) { Void initPorts() { Int digitToLedValue(int digit) { Led.seg3 = digitToLedValue(value % 10); ISR(TIMER1_OVF_vect) { ISR(INT0_vect) { ISR(INT1_vect) { Int main() { MCUCR |= (1 << ISC00); MCUCR |= (1 << ISC10); TIMSK |= (1 << TOIE1); SetLedValue(0); While (1) { Напильником и ручным лобзиком придал нужную форму коробочке, распихал всю начинку по местам, закрепив где необходимо термосоплями. Приступим к стрельбам: Винтовка на фото - Stoeger x20, в который установлена газовая пружина. В теории может выжать 250 м/с. Конечно же я не рассчитываю на его точность, эталона рядом не было, но скорость показывает не рандомно, стабильно. Если нужно отслеживать изменение начальной скорости пули в зависимости от изменений конструкции пневматики, то этого вполне достаточно. Аналоги такого хронометра стоят более 2 тысяч рублей, этот же обошелся мне не более чем в 300р, и еще подарил 4 часа приятного времяпрепровождения. Планирую купить +31 Добавить в избранное Обзор понравился +69 +128Владею пневматической винтовкой, всегда была интересна скорость вылета пули из ствола, это кому-то покажется странным, но у пневмолюбов скорость пули одна из главных тем для членометрии. Погуглив немного нашел несколько вариантов схем на разных микроконтроллерах, так как у меня уже был работы с AVR, без раздумий выбрал вариант на avr. Все необходимые детали я нашел на упоминавшемся уже здесь Taydaelectronics.com. Покупка собрана, оплачена, получена, приступим… Сразу приложу схему: Итак, нам понадобится: Повторил схему в протеусе, подогнал под свои нужды, и вытравил печатную плату Кое-как расставил компоненты, чтобы иметь примерное представление, как рисовать дорожки. И да, у меня нет принтера, я рисую дорожки перманентным маркером))) Сначала пробую на бумаге Потом переношу на текстолит Травим. Травлю в горячем растворе хлорного железа, разведенного примерно 1:3 с водой. После травления раствор храню на балконе, он работает даже после высыхания, нужно просто добавить воды. Следует осторожничать и не допускать попадания его на металлические поверхности - начнется усиленная коррозия. Чистим Сверлим. Дрельку делал из патрона и моторчика с фасттека. Вот все компоненты запаяны на плату, осталось только прошить микроконтроллер ОНО ЖИВОЕ! После этого я изготовил измерительную трубку с датчиками. Устроено просто - на расстоянии 50 мм друг от друга находятся расположенные друг напротив друга фототранзистор и светодиод, своеобразные оптопары. Когда пулька пролетает по трубке, она поочередно перекрывает луч света первому и второму транзистору, о чем они сигналят микроконтроллеру, который высчитывает скорость по всем известной со школы формуле. исходный код /* #define F_CPU 1000000UL
#include #define LED_EMPTY ~0b00000000
#define LED_0 ~0b00111111
#define LED_MINUS ~0b01000000 #define BASE_LENGTH 1000 Typedef struct LedPanel { Void renderSegmentNext() { Switch (activeSegment) { Void initPorts() { Int digitToLedValue(int digit) { Led.seg3 = digitToLedValue(value % 10); ISR(TIMER1_OVF_vect) { ISR(INT0_vect) { ISR(INT1_vect) { Int main() { MCUCR |= (1 << ISC00); MCUCR |= (1 << ISC10); TIMSK |= (1 << TOIE1); SetLedValue(0); While (1) { Напильником и ручным лобзиком придал нужную форму коробочке, распихал всю начинку по местам, закрепив где необходимо термосоплями. Приступим к стрельбам: Винтовка на фото - Stoeger x20, в который установлена газовая пружина. В теории может выжать 250 м/с. Конечно же я не рассчитываю на его точность, эталона рядом не было, но скорость показывает не рандомно, стабильно. Если нужно отслеживать изменение начальной скорости пули в зависимости от изменений конструкции пневматики, то этого вполне достаточно. Аналоги такого хронометра стоят более 2 тысяч рублей, этот же обошелся мне не более чем в 300р, и еще подарил 4 часа приятного времяпрепровождения. |
Популярное:
Проект на тему шоколад польза или вред |
Новое
- Критерии выбора системы электронного документооборота
- Константин Анохин: Мозг и разум Учёные и художники: глаза в глаза
- Проект по внеклассному литературному чтению "весна глазами поэтов, писателей, художников"
- Что относится к трансжирам
- Бурсит тазобедренного сустава лечение препараты Что такое бурсит тазобедренного сустава
- Сонник: к чему снится Покойник
- Журнал кассира операциониста и его заполнение Журнал кассира операциониста титульный лист
- Рецепт: Татарские салаты
- Морской окунь, запеченный в фольге
- Что можно делать с лисичками грибами