Система определения времени падения груза между двумя точками

RUSLAN NAKIPOV
Offline
Зарегистрирован: 23.01.2020

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

До меня вторичные обмотки были подключены последовательно что не позволяло точно определить факт прохождения той или иной точки .В данный момент катушки разделены что дает возможность фиксации события в конкретнй момент времени .Исходная программа имела следуюший вид:

#include <util/delay.h>

const int numReadings = 200;
int readings[numReadings];
int index = 0;
int total = 0;
int average = 0;
int thisReading = 0;
int inputPin = A0;
int outputPin = 7;
double data;
unsigned char s1 = 0;
unsigned char s2 = 0;
unsigned char s3 = 0;
volatile unsigned long int time1 = 0;
volatile unsigned long int time2 = 0;

void setup() 
{  // put your setup code here, to run once:
Serial.begin (9600);
pinMode (outputPin, OUTPUT);
for (int thisReading = 0; thisReading < numReadings; thisReading++);
  readings[thisReading] = 0;
}
void loop() 
{  // put your main code here, to run repeatedly:

  total = total - readings[index];
  readings[index] = analogRead(inputPin);
  total = total + readings[index];
  index = index + 1;
  if (index >= numReadings)
  index = 0;
  average = total / numReadings;
// Serial.println (average);
  if (s3 == 1)
{ 
  data = (time2 - time1);
  Serial.println(data);
 // delay (20000);
  TCCR1B = 0;
  TCNT1 = 0;
  s2 = 0;
  s3 = 0;
  s1 = 0;
}

if (average >= 35  && s1 == 0 && s2 == 0)
{
Serial.println ("Frequencymeter is on");
 time1 = millis();
 s1 = 1;
} 
else
 {
   if (average <= 18 && s1 == 1)
   {
     s2 = 1;
     s1 = 0;
     Serial.println ("First coil is passed");
   }
 }
if (average >=35  && s2 == 1) 
{
Serial.println ("Frequencymeter is off");
 time2 = millis();
 s3 = 1;
} 
}
 
Задача состоит в том что необходимо переделать скет под работу от двух аналоговых сигналов, т.е. старт счета времени должен происходить только при получении синала удовлетворяющего заданное требование от верхней катушки и финиш только на нижней.
DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

RUSLAN NAKIPOV пишет:

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

Мы не против.  Нужно, дак переделывай. 

b707
Offline
Зарегистрирован: 26.05.2017

RUSLAN NAKIPOV пишет:

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

готовы оплачивать работу?

sadman41
Offline
Зарегистрирован: 19.10.2016

Зачем там Timer1 - загадка....

b707
Offline
Зарегистрирован: 26.05.2017

sadman41 пишет:

Зачем там Timer1 - загадка....

какие ошметки удаленного кода, еще и времена волатильные...

RUSLAN NAKIPOV
Offline
Зарегистрирован: 23.01.2020

Я подозреваю что из за этого 

data = (time2 - time1)

Да и мониторинг порта дает следуюшие

11:20:18.019 -> Frequencymeter is on
11:20:26.445 -> First coil is passed
11:20:26.485 -> Frequencymeter is off
11:20:26.485 -> 8368.00
11:20:26.525 -> Frequencymeter is on
11:20:26.525 -> First coil is passed
11:20:26.565 -> Frequencymeter is off
11:20:26.565 -> 46.00
11:20:26.599 -> Frequencymeter is on
11:20:26.633 -> First coil is passed
11:20:26.633 -> Frequencymeter is off
11:20:26.667 -> 48.00
11:20:26.667 -> Frequencymeter is on
11:20:26.701 -> First coil is passed
11:20:26.701 -> Frequencymeter is off
11:20:26.735 -> 47.00
 
b707
Offline
Зарегистрирован: 26.05.2017

RUSLAN NAKIPOV пишет:

Я подозреваю что из за этого

 

это на какое сообщение ответ?

-NMi-
Offline
Зарегистрирован: 20.08.2018

Этт унас внауке щас такие работают?  Нахертакаянаука.

RUSLAN NAKIPOV
Offline
Зарегистрирован: 23.01.2020

Про код сказать ни чего не могу писал не я . Да и я вообще как бы не по этой части.

b707
Offline
Зарегистрирован: 26.05.2017

RUSLAN NAKIPOV пишет:

Да и я вообще как бы не по этой части.

ну тогда Вам только один путь - платный заказ.

А Вы по какой части, если не секрет?

RUSLAN NAKIPOV
Offline
Зарегистрирован: 23.01.2020

b707 пишет:

RUSLAN NAKIPOV пишет:

Да и я вообще как бы не по этой части.

ну тогда Вам только один путь - платный заказ.

А Вы по какой части, если не секрет?

Теплофизические и переносные свойства чистых веществ и много компонентных систем.

RUSLAN NAKIPOV
Offline
Зарегистрирован: 23.01.2020

-NMi- пишет:

Этт унас внауке щас такие работают?  Нахертакаянаука.

Я дико извиняюсь но програмирование и иже с ним не мой профиль деятельности, да и лепить "пулю" из говна и палок при нулевом финансировании опираясь на оборудование и методики середины 20 века. 

Образованию Теплоэнегетик, а не програмист. Да и пришел за совет , тут с ходу...

b707
Offline
Зарегистрирован: 26.05.2017

RUSLAN NAKIPOV пишет:

Да и пришел за совет , тут с ходу...

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

RUSLAN NAKIPOV
Offline
Зарегистрирован: 23.01.2020

b707 пишет:

RUSLAN NAKIPOV пишет:

Да и пришел за совет , тут с ходу...

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

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

Да и интересно не время прохождения через катушка , а время прохождения заданного растояния между катушками.

 

RUSLAN NAKIPOV
Offline
Зарегистрирован: 23.01.2020

b707 пишет:

RUSLAN NAKIPOV пишет:

Да и я вообще как бы не по этой части.

ну тогда Вам только один путь - платный заказ.

А Вы по какой части, если не секрет?

Если платно: то цена вопроса и гарантии работоспособности!

nik182
Offline
Зарегистрирован: 04.05.2015

Поищите тему измерение скорости пули. Там был скетч , который измерял напряжение на фотодиоде и при пролёте пули запускал измерение времени, при пролёте второго фотодиода останавливал. Скетч точно для Вас. Даже переделывать почти ничего не надо.

RUSLAN NAKIPOV
Offline
Зарегистрирован: 23.01.2020

nik182 пишет:
Поищите тему измерение скорости пули. Там был скетч , который измерял напряжение на фотодиоде и при пролёте пули запускал измерение времени, при пролёте второго фотодиода останавливал. Скетч точно для Вас. Даже переделывать почти ничего не надо.

Спасибо за дельный совет!

nik182
Offline
Зарегистрирован: 04.05.2015
ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

RUSLAN NAKIPOV,

задача не имеет особого смысла, пока неясно о каких скоростях идёт речь и какая точность измерения требуется. Опять же, насколько быстро нужен результат - в реальном времени или несколько милли(микро)секунд задержки не критично. Можете всё это сказать? Пока это неясно, мы не можем знать, может быть этот проект -  детская поделка, а может - серьёзный ОКР.

А про то, что Вы теплофизик, ну давайте не будем прибедняться - не бывает в наше время теплофизиков, которые не изучали бы программирование. Ладно бы Вы сказали, что Вы филолог или театральный актёр. И то, не уверен.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Странно, я вроде в какой-то теме писал как правильно измерять скорость пули - как это делается в баллистических лабораториях. Видимо, не в этой. Там что-то странное написано. Прибор получится капризный и ненадёжный донельзя.

nik182
Offline
Зарегистрирован: 04.05.2015

На чём основан вывод о капризности и не надёжности? У меня свинцовый шарик от воздушки брошенный с высоты 1 метр в 100 % случаев дает правильное измерение скорости с разбросом менее 5% . При стрельбе из воздушки % успешных измерений меньше, но скорости правильные и изменение конструктивных элементов дает адекватные измерения. Всё делалось, чтобы оценить качество уплотнительных элементов замков. Свою работу выполняет на 100% для любителя с десятком пневматических реплик. Лабораторию мне не надо. Достаточно оценки состояния, по начальной скорости шарика.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

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

RUSLAN NAKIPOV
Offline
Зарегистрирован: 23.01.2020

ЕвгенийП пишет:

RUSLAN NAKIPOV,

задача не имеет особого смысла, пока неясно о каких скоростях идёт речь и какая точность измерения требуется. Опять же, насколько быстро нужен результат - в реальном времени или несколько милли(микро)секунд задержки не критично. Можете всё это сказать? Пока это неясно, мы не можем знать, может быть этот проект -  детская поделка, а может - серьёзный ОКР.

А про то, что Вы теплофизик, ну давайте не будем прибедняться - не бывает в наше время теплофизиков, которые не изучали бы программирование. Ладно бы Вы сказали, что Вы филолог или театральный актёр. И то, не уверен.

О скоростях:

В различных средах при разных температурах и давлениях скорость падения груза на данном отрезке дистанции величина изменчивая. А в зависимости от скорости и изменяется время что для нас и является искомой величиной.

О точности:

Версия системы реализованая до этого ( скетч ) своей точность вполне удовлетворяла но имела ряд проблем:  1-ложные срабатывания ( вызваны железным отсутсвие что есть начало- конец отчета.  2- сложность настройки переменных от которых  никуда не деться т.к. величина наведенной ЭДС во вторичных обмотках катушек при различных средах внутри капилярной трубки будет различна и потребуется корректировка порога срабатывкания .

#include <util/delay.h>

const int numReadings = 200;
int readings[numReadings];
int index = 0;
int total = 0;
int average = 0;
int thisReading = 0;
int inputPin = A0;
int outputPin = 7;
double data;
unsigned char s1 = 0;
unsigned char s2 = 0;
unsigned char s3 = 0;
volatile unsigned long int time1 = 0;
volatile unsigned long int time2 = 0;

void setup() 
{  // put your setup code here, to run once:
Serial.begin (9600);
pinMode (outputPin, OUTPUT);
for (int thisReading = 0; thisReading < numReadings; thisReading++);
  readings[thisReading] = 0;
}
void loop() 
{  // put your main code here, to run repeatedly:

  total = total - readings[index];
  readings[index] = analogRead(inputPin);
  total = total + readings[index];
  index = index + 1;
  if (index >= numReadings)
  index = 0;
  average = total / numReadings;
// Serial.println (average);
  if (s3 == 1)
{ 
  data = (time2 - time1);
  Serial.println(data);
 // delay (20000);
  TCCR1B = 0;
  TCNT1 = 0;
  s2 = 0;
  s3 = 0;
  s1 = 0;
}

if (average  >= 35  && s1 == 0 && s2 == 0) порог включения таймера
{
Serial.println ("Frequencymeter is on");
 time1 = millis();
 s1 = 1;
} 
else
 {
   if (average >= 18 && s1 == 1)  спад велечины свид. о том что катушка пройдена
   {
     s2 = 1;
     s1 = 0;
     Serial.println ("First coil is passed");
   }
 }
if (average >=35  && s2 == 1) ну и конец 
{
Serial.println ("Frequencymeter is off");
 time2 = millis();
 s3 = 1;
} 
}

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

А что про изучение программирования так это было году так в 2008 и двали если мне память не изменяет Basic который был благополучно забыт после зачета.

Вот сейчас сижу за решением проблемы которую не решели до меня и бросили на пол пути.Да и не плохот было добавить железно и програмно кнопку от ложного запуска замера т.к. после каждого измерения автоклав с измерительной ячейкой переворачивается .Извените за качество!!

 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Ну, по скорости-то хоть какие-то диапазоны можно выделить. Например, на Ваших осциллограммах видно, что время возмущения от проходящего предмета составляет несколько периодов задающей кривой. Если это всегда так и есть возможность сориентировать катушки так, чтобы проходящее тело всегда вызывало именно увеличение амплитуды, то можно срезать задающую частоту фильтром и это избавит практически от всех описанных Вами проблем. Получится прямая со скачком в момент прохождения тела. Этот скачок можно усилить и/или подать на вход триггеру Шмитта и о проблеме нестабильных амплитуд можно сразу забыть. Да и само измерение превращается в банальный захват таймера. Т.е. всё упрощается.

nik182
Offline
Зарегистрирован: 04.05.2015

ЕвгенийП пишет:

Капризность и ненадёжность в том, что пуля должна очень точно пройти мимо фотодиода, чтобы тень накрыла его желательно полностью и всегда одинаково. Чуть-чуть не туда и она его как следует не накроет....


В моём случае это трубка, продолжение ствола. Крепится к стволу. Шарики летят точно по центру. Измеряю скорость на выходе из ствола. В таком варианте проблем не было. Когда пробовали стрелять на расстоянии, то да, всё как Вы описали.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

nik182][quote=ЕвгенийП пишет:

трубка, продолжение ствола. Крепится к стволу. Шарики летят точно по центру. Измеряю скорость на выходе из ствола.

Ну, в таком случае, Вы что-то другое измеряете. Т.е. Вы удлинили ствол и измеряете "в некоторой точке внутри этого удлинённого ствола", а не на выходе из реального. Опять же, для маленьких скоростей погрешность невелика, а с ростом скорости будет увеличиваться. Для сверхзвуковых пуль - совсем беда.

nik182
Offline
Зарегистрирован: 04.05.2015

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

RUSLAN NAKIPOV
Offline
Зарегистрирован: 23.01.2020

ЕвгенийП пишет:

Ну, по скорости-то хоть какие-то диапазоны можно выделить. Например, на Ваших осциллограммах видно, что время возмущения от проходящего предмета составляет несколько периодов задающей кривой. Если это всегда так и есть возможность сориентировать катушки так, чтобы проходящее тело всегда вызывало именно увеличение амплитуды, то можно срезать задающую частоту фильтром и это избавит практически от всех описанных Вами проблем. Получится прямая со скачком в момент прохождения тела. Этот скачок можно усилить и/или подать на вход триггеру Шмитта и о проблеме нестабильных амплитуд можно сразу забыть. Да и само измерение превращается в банальный захват таймера. Т.е. всё упрощается.

1. Осцилограмма не дает полной и достоверной картины т.к. источником изначального синала в превичной обмотке катушек подключенных последовательно является Гентратор сигналов низкочастотный Г3-118 в работе используется частота 1000 Гц. а данное приложение имеет максимальную дисретизацию 50 Гц.Так что время возмушения иное да и тут пока ячейка ничем не заправлена (грузик толкается стержнем от ручки)

2.С ориентацией катушек то же может быть засада т.к. они самопальные и при этом способ намотки у них различный . К тому же из за этих особеностей они влияют друк на друга при изминении каких либо параметров (КУ на уселителе сигнала какого либо из каналов).

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

nik182
Offline
Зарегистрирован: 04.05.2015

ЕвгенийП пишет:

Ну, в таком случае, Вы что-то другое измеряете. Т.е. Вы удлинили ствол и измеряете "в некоторой точке внутри этого удлинённого ствола", а не на выходе из реального. Опять же, для маленьких скоростей погрешность невелика, а с ростом скорости будет увеличиваться. Для сверхзвуковых пуль - совсем беда.


Трубка хоть и продолжает ствол, но всегда между срезом ствола и входом в трубку есть 5 - 10 см свободного пространства. Все воздушки давали скорость до 250 м/с , все дозвуковые. Что я измеряю другое? Мне нужна скорость на выходе из ствола, что бы понять, пора менять резинки уплотнения или нет.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

nik182 пишет:
всегда между срезом ствола и входом в трубку есть 5 - 10 см свободного пространства.
Про это Вы не говорили, я думал, что вплотную. Такого зазора  для таких скоростей, может и хватит - у Ворот можно точнее спросить.

nik182 пишет:
Все воздушки давали скорость до 250 м/с , все дозвуковые.
Ну, это-то понятно, обычные воздушки (не легкогазовые и без нагрева) сверхзвуковыми не могут быть технически.

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

RUSLAN NAKIPOV
Offline
Зарегистрирован: 23.01.2020

nik182 пишет:
Для нормальной фиксации прохождения через катушки груза нужно избавится от переменной составляющей. Сделать это можно разными способами, но мне видится как простейший собрать схему компенсации на операционном усилителе. Подать на входы сигналы с задающего генератора и выхода с катушки и регулируя их отношение в состоянии покоя можно добиться практически нулевых колебаний на выходе. Тогда при прохождении груза через катушку баланс будет нарушен и на выходе ОУ будет импульс, который и надо использовать как сигнал для цифрового входа. Исчезнет необходимость в обработке сигнала с катушки . Точность существенно повысится.

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

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

Да и сам автоклав с системой электрического нагрева даст свои наводки во время эксперимента.

rkit
Offline
Зарегистрирован: 23.11.2016

Собственно, если подразумевается постоянное наличие осциллографа рядом, то зачем вообще заниматься этой ерундой с ардуиной? Клацнуть по двум точкам на графике не требует автоматизации.

Гриша
Offline
Зарегистрирован: 27.04.2014

вы бы все-таки сообщили минимальное и максимальное время измерения (какое требование)?

RUSLAN NAKIPOV
Offline
Зарегистрирован: 23.01.2020

rkit пишет:

Собственно, если подразумевается постоянное наличие осциллографа рядом, то зачем вообще заниматься этой ерундой с ардуиной? Клацнуть по двум точкам на графике не требует автоматизации.

1. Осциллограф не постоянно рядом, да и он входит в програмный комплекс к АЦП к другой установке.

2. Да и постоянно клацать по двум точкам не выход.

nik182
Offline
Зарегистрирован: 04.05.2015

Если в первом сообщении картинка реального эксперимента, то состояние дел очень грустное. У вас всего 10 колебаний генератора на весь процесс. Т.е. лучшее разрешение, которое можно получить при этом 10 % и это после набора статистики, обработки и в условиях идеального подхвата цифровой схемой фронтов изменения напряжения на катушке. Что то мне подсказывает, что с такими точностями Вы будете измерять вязкость совсем не того, чего хотите. Надо пересмотреть концепцию регистрации. Или вообще этим не заниматься. Отзывы на статьи и диссеры точно будут отрицательными. Нельзя делать науку на дырке от бублика. Доверия данным, полученным на такой установкем не будет. Ну и соответственно все остальное. И дело даже не в финансировании. Нужен человек, способный изменить электронику установки.

RUSLAN NAKIPOV
Offline
Зарегистрирован: 23.01.2020

Гриша пишет:

вы бы все-таки сообщили минимальное и максимальное время измерения (какое требование)?

Это зависит от вещества в системе, а так скажем от 1сек до ........

Требования как такового по времени нет.

Гриша
Offline
Зарегистрирован: 27.04.2014

RUSLAN NAKIPOV пишет:

Гриша пишет:

вы бы все-таки сообщили минимальное и максимальное время измерения (какое требование)?

Это зависит от вещества в системе, а так скажем от 1сек до ........

Требования как такового по времени нет.

уже что-то, а то вам в 34м посте уже посчитали точность :)

Гриша
Offline
Зарегистрирован: 27.04.2014

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

 

RUSLAN NAKIPOV
Offline
Зарегистрирован: 23.01.2020

nik182 пишет:
Если в первом сообщении картинка реального эксперимента, то состояние дел очень грустное. У вас всего 10 колебаний генератора на весь процесс. Т.е. лучшее разрешение, которое можно получить при этом 10 % и это после набора статистики, обработки и в условиях идеального подхвата цифровой схемой фронтов изменения напряжения на катушке. Что то мне подсказывает, что с такими точностями Вы будете измерять вязкость совсем не того, чего хотите. Надо пересмотреть концепцию регистрации. Или вообще этим не заниматься. Отзывы на статьи и диссеры точно будут отрицательными. Нельзя делать науку на дырке от бублика. Доверия данным, полученным на такой установкем не будет. Ну и соответственно все остальное. И дело даже не в финансировании. Нужен человек, способный изменить электронику установки.

1.В первом сообщении картинка не реального эксперимента.Да и тут то же!!!

2.Обратите внемание на правую сторону с натройками программы, и увидите что дискретизация данного "Осцилографа" 50 Гц.

3.величина синала в мВ на изображение это вообще после уселителя

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

Гриша
Offline
Зарегистрирован: 27.04.2014

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

asam
asam аватар
Offline
Зарегистрирован: 12.12.2018

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

qwone
qwone аватар
Offline
Зарегистрирован: 03.07.2016

asam, согласен . делать огибающую(ФНЧ) и на огибающей ловить порог есть/нет.

RUSLAN NAKIPOV
Offline
Зарегистрирован: 23.01.2020

Гриша пишет:

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

Извените реальный осциллограф аналоговый.Да и реальная величина сигнала величина не постоянная и меняется в зависимости от среды поэтому в программном коде величина импульса срабатывания и прописывается. Схему имеющийся Эл. Разводки постараюсь сегодня завтра накидать.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

вот если бы трубка была не металлическая...сделать на срыве генерации можно было бы

-NMi-
Offline
Зарегистрирован: 20.08.2018

asam пишет:

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

Цеж некошерно, зачем тогда дурдуина?

Гриша
Offline
Зарегистрирован: 27.04.2014

Еще есть такой замечательный инструмент - ПИД регулятор.   Если его использовать..., но там аппаратный скил нужно прокачивать :)))

АРУ тоже собирать нет резона, хотя тут она смотрится... ПРУ (программная регулировка) несколько проще будет, но тоже тот еще эксперимент как и с АРУ. 

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

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

И я так и не понял, черновой вариант ТЗ на устройство есть? МК то посчитает, а как сбрасывать, куда сбрасывать результат? Сколько выделить время на эксперимент, после которого считать, что произошел сбой. Что делать со сбоями. 

-NMi- пишет:

asam пишет:

Для начала было бы неплохо доработать аппаратную часть ...

Цеж некошерно, зачем тогда дурдуина?

часы-таймер, с гибким функционалом и кучей настроек. А еще как логгер можно использовать.  :) ;)

ВН
Offline
Зарегистрирован: 25.02.2016

Похоже, что как раз ПРУ наиболее простой и близкий к текущим реалиям вариант. 

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

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

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

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

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

А какое давление в трубке? По температуре понятно до +500С, а то может на керамику заменить да сделать концевики на срыве генерации, как БВК

RUSLAN NAKIPOV
Offline
Зарегистрирован: 23.01.2020

ua6em пишет:

А какое давление в трубке? По температуре понятно до +500С, а то может на керамику заменить да сделать концевики на срыве генерации, как БВК


С +500C вы загнули, предел считайте +200С т. к. пайка контактов выводов на использаваном припое держит +220С.
А вот давление в прицепе +600 Атм.

Гриша
Offline
Зарегистрирован: 27.04.2014

ВН пишет:

Похоже, что как раз ПРУ наиболее простой и близкий к текущим реалиям вариант. 

это из автоматического, тогда да. Но ТС такое не потянет, только если кто ему поможет и не один раз переписывать потребуется.

можно тоже самое руками делать, а для индикации светодиод использовать. Хотя этот вариант тоже не из простых (как я понял для ТС). 

в общем: куда не кинь - всюду клин... без спеца. ИМХО   

хорошо только одно - пока путей решения больше одного :))))))))

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

с точностью до наоборот ))) тогда без вариантов, я с давлениями выше 150 атмосфер не работал, есть правда одна мысль, масса шарика и материал какие, сталь ШХ?