AirSpeed: Bullets speed meter

for WNT / W95 / W98

Beta Release v0.95


Содержание

  1. Введение
  2. Требования
  3. Возможности
  4. Описание
    1. Внешнее оборудование
    2. Интерфейс программы
  5. Подробности
    1. Недостатки оборудования
    2. Точность измерений
  6. Эволюция
  7. ЧаВО
  8. Благодарности
  9. Автор

Введение

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

Решив занятся этим вплотную я рассмотрел варианты с баллистическим маятником, вращающимися циллиндрами (чего не вспомнишь из школьного курса физики), с использованием катушек индуктивности и фотоэлементов. Первые не устраивали своей точностью, вторые - сложностью реализации. К счастью вспомнилась одна медицинская программа, где в качестве АЦП использовался SB, так что устройство для регистрации сигналов с необходимой точностью было найдено, осталась очередь за грамотным способом получения самих сигналов, что, вскоре, тоже разрешилось благодаря идее из ru.weapon про использование пробивных датчиков на основе фольги от бумажных конденсаторов.

В начале 1999 года была написана MS-DOS утилитка для обработки wav файлов, в процессе эволюции она прошла несколько стадий ознаменовавшихся применением различных способов подключения датчиков (последовательный и параллельный) в результате чего был выбран вариант с параллельным подключением требующий стерео сигнал на входе.

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

Далее следует описание результатов этой работы.

Требования

Возможности

Курсивом выделены возможности, появившиеся в последней версии.

Описание

Собственно в Ваших руках на данный момент находится лишь программная часть ПАК предназначенного для измерения скорости, ниже, кроме описания самой программы, приводятся рекомендации по изготовлению аппаратной составляющей комплекса.

Внешнее оборудование

Программа получает данные от двух датчиков, каждый из которых подсоединен к своему каналу (Рис. 1). Для начала стоит определиться с конструкцией датчиков, они бывают пробивные, акустические, индукционные, встречались упоминания попыток изготовления оптических, но без особых успехов. Можно попытаться использовать вместо двух датчиков один, закрепляя более простую конструкцию на дульном срезе, но это все поле для Ваших самостоятельных исследований.

Рис. 1 Схема подключения

Рассмотрим подробнее пробивную конструкцию: два листа токопроводящего материала закрепляются параллельно друг другу на малом расстоянии (меньшим либо равным длине пули) при пробивании листов они соприкасаются и замыкают сигнал. В качестве материала для токопроводящих листов великолепно подходит лента из бумажных конденсаторов (Рис. 2), она настолько тонкая, что практически не оказывает сопротивления пуле. Собственно лента состоит из двух полосок изолирующего материала (a) и алюминиевой фольги между ними (b). Для наших целей достаточно удалить один из слоев изолирующего материала и протереть фольгу от масла.

Рис. 2 Лента от бумажного конденсатора

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

Для изготовления всей системы нам понадобится:

Схема распайки была приведена выше, так что сразу перейдем к изготовлению датчиков. Для этого нам надо будет изготовить две рамки (Рис. 3) их размеры (a и b) надо подбирать в зависимости от размеров фольги имеющийся в наличии, по поводу ширины рамки (c) стоит иметь в виду, что при малой толщине (~ 1мм) возможны ложные срабатывания датчика, а излишняя толщина (более 5 мм) не дает гарантии срабатывания.

Рис. 3 Рамка для датчика

При сборке датчика необходимо положить на отверстия в рамке (a) листы фольги (b) (токопроводящими поверхностями внутрь) и скрепить их двумя полосками скотча (c) по боковым сторонам (удобнее одну полоску клеить заранее) так же, в качестве крепежа, могут подойти аптекарские резинки (если позволит размер рамки), но скотчем проще.

Рис. 4 Датчик в сборе

Расстояние между датчиками имеет смысл делать равным 0.5-1 м (подробнее это описано в разделе "Подробности") и располагать всю конструкцию на расстоянии от дульного среза, что бы не не было преждевременного срабатывания от потока воздуха перед пулей.

Теперь, когда готова система регистрации данных, можно приступать к изучению практических навыков работы с самой программой, именно этому и посвящен следующий раздел.

Интерфейс программы

Главное окно программы (Рис. 5) содержит в себе панель управления, группу полей содержащих информацию о загруженном файле и результататы его анализа, панель сравнения скоростей а также список всех предыдущих измерений. Если в списке выделить несколько записей, то будет показана средняя скорость посчитанная на основе выделенных значений. По двойному щелчку на записи в списке дается возможность ввести для нее описание, окончание ввода - нажатие Enter. Для совместимости со старыми версиями, формат файла airspeed.dat не менялся, поэтому все описания записываются в файл airspeed.dat.desc.

Панель управления содержит в себе следующие пункты:

Рис. 5 Главное окно программы

При выборе "Preferences" открывается панель настроек программы (Рис. 6) в их число входят:

После завершения анализа в главное окно выдаются результаты измерений (Рис. 7).

Рис. 6 Вид панели настроек

В поле Fileinfo содержится информация о формате и параметрах файла, в tooltip'e находится строка с полным путем к открытому файлу. В полях Time выводятся временные смещения зафиксированных пиков, в полях Terr/Serr указываются величины абсолютных погрешностей измерения времени и скорости, в tooltip'ах находятся относительные значения погрешностей. Поле Results отображает полученное значение скорости.

Сравнение скоростей приводится в виде столбцовой диаграммы, за 100% принимается значение скорости базовой модели оружия.

Рис. 7 Результаты работы

На этом можно закончить с описательной частью и перейти к ознакомлению с техническими особенностями измерений.

Подробности

Здесь приведена информация технического характера касающаяся точности измерений, причинам влияющим на качество результатов и способам повышения достоверности получаемых данных.

Недостатки оборудования

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

Рис. 8 Стартовый всплеск
Рис. 9 Фоновый шум

Для ликвидации этих дефектов программным путем в программу добавлены две опции: "Skip time" и "Noise level". Первая указывает подпрограмме анализа на то, что необходимо пропустить начало записи (как правило, достаточно 100-200 мс) учитывая, что всплеск от попадания обычно находится на расстоянии нескольких секунд от начала файла, данная мера не сможет исказить результаты анализа и лишь уберет помехи. Вторая опускает чувствительность анализирующей подпрограммы до такого предела, что шум начинает проходить сквозь нее незамеченным, опять же, обычно, достаточно 10% в то время как всплеск от пробоя датчика в несколько раз выше.

Для того, что бы правильно подобрать значения обоих параметров для вашей звуковой карты (и выбранных частоты оцифровки и глубины звука!) можно воспользоваться возможностью калибровки, которую предоставляет сама программа, для этого надо подсоединив датчики ко входу звуковой карты записать порядка секунды "шума", после чего нажать кнопку калибровки. Можно повторить измерения несколько раз для определения средних значений, можно, для надежности, несколько увеличить полученные результаты. Полученный "шум" можно экспортировать в текст и проанализировать характер записи во внешней программе (Ex: MS Excel). Калибровку надо производить, как минимум, при изменении глубины звука (т.к. уровень шума может значительно отличаться), частота оцифровки влияет лишь на изменение значения skip time.

На некоторых звуковых картах уроверь сигналов от замыкания контактов может быть очень низок или вообще не регистрироваться, в этом случае можно попытаться усилить сигнал включив в цепь батарейку на 1.5 В.

Точность измерений

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

При частоте записи сигнала в 44100 Hz мы получаем шаг оцифровки ~ равным 0.00002 сек, т.е. за это время пуля при скорости в 300 (150) м/с пролетит лишь 0.006 (0.003) м и, значит, при расстоянии между датчиками в 60 см, относительная погрешность по расстоянию составит не более 1 (0.5) %, что, в итоге, даст нам результат 300 ± 3 (150 ± 0.75) м/с.

Мы можем увеличивать расстояние между датчиками, как следствие, повысится точность измерений, но не стоит увлекаться, при большом расстоянии скорость пули тоже может измениться, что внесет свои погрешности в результат.

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

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

Эволюция

AirSpeed v0.90b (27.09.99)
Первая beta, алгоритм анализа взят из ms-dos версии, все остальное написано заново, в комплекте идет неполная (из-за отсутствия информации) база скоростей отечественных образцов пневматического оружия.

AirSpeed v0.91b (30.09.99)
Первый публичный релиз, исправлены некоторые недочеты в вычислении погрешностей, добавлены почти все значения скоростей в список базовых моделей оружия.

AirSpeed v0.92b (19.12.99)
Обнаружилась досадная недоработка в работе с 16'ти битным звуком, благодаря своевременной бдительности одного из пользователей ошибка была обнаружена и исправлена.

AirSpeed v0.95b (30.06.00)
Переделан механизм записи звука (теперь нет надобности в промежуточных файлах), добавлена возможность калибровки звуковой карты, сделан экспорт .wav файла в .txt формат (для, буде у кого такое желание, независимой экспертизы результатов а так же ручной калибровки звуковой карты), для списка ранее проведенных измерений стало возможным добавлять свои описания.

ЧаВО

Благодарности

Если вам чего-то не хватает в программе - пишите и если ваша идея мне понравится, то вы появитесь в этом списке, а программа обретет еще одну полезную фичу.

Автор

Anton Proprock
http://proprock.i.am
mailto:support@airgun.virtualave.net

Признательный за прочтение сих строк, Anton Proprock.