Multi-Set.ru - Форум

Multi-Set.ru - Форум (http://multi-set.ru/forum/index.php)
-   Ардуино в автомобиле (http://multi-set.ru/forum/forumdisplay.php?f=72)
-   -   HEX для проверки клавиатуры (http://multi-set.ru/forum/showthread.php?t=4304)

agnec 12.10.2019 15:33

Всем привет !
Цитата:

Сообщение от dvm99i
1111; 9999; 1111; 9999 (это эмуляция НЧ сигнала)
Для такого ряда СКЗ = 6,4 ; Ср.знач. = 5

Следующий ряд (эмуляция СЧ сигнала)-
11; 99; 11; 99
И опять видим: СКЗ = 6,4 ; Ср.знач. = 5

Следующий ряд (ВЧ сигнал)-
1; 9; 1; 9
СКЗ = 6,4 ; Ср.знач. = 5

Это как Вы считали ? Мой калькулятор выдал другие результаты

1111; 9999; 1111; 9999
скз=7113,9 ср=5555

11; 99; 11; 99
скз=70,4 ср=55

1; 9; 1; 9
скз=6,4 ср=5

Цитата:

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

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

dvm99i 12.10.2019 17:56

Здравствуйте, Атос!

Цитата:

Атос:

Это как Вы считали ? Мой калькулятор выдал другие результаты

1111; 9999; 1111; 9999
скз=7113,9 ср=5555

11; 99; 11; 99
скз=70,4 ср=55

1; 9; 1; 9
скз=6,4 ср=5


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

Раз речь шла о прямоугольном сигнале, мной имелось ввиду:
1111 - это четыре единицы подряд, а не тысяча сто одиннадцать.
Так же и 9999 - это четыре девятки подряд .

Соответственно в первом случае (с НЧ сигналом) - 16 значений,
во втором (СЧ сигнал) - 8 значений,
в третьем (ВЧ сигнал) - 4 значения.

Т.е.
Во всех массивах набор 1 и 9.






Admin 12.10.2019 18:49

Здравствуйте люди.


to agnec

Цитата:

Сообщение от agnec

Получил, прошил, без пошаговой инструкции конечно ничего хорошего не вышло :(
Затёр своими игрушками.
принтер засох насмерть
некоторое количество времени, которого всегда не хватает.

Всё понятно, помню и о вашем здоровье .... дай Бог вам здоровья !
И теперь от меня нет ни слова про это - почему Атос утащил цацку в нору и затихорился.

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

И кстати .... чем играется = ??? :big_boss: ... жадина говядина
Неужели оборотами и миллисекундами .... до градусов ещё не дошёл?


Но ничего.
Амуниция уже в пути.
Скоро подтянется красавец Алекс555 и человек с дыркой в голове = монстр Дима.
И карусель закрутится = только держись.

Я и сам из-за нехватки времени не тороплюсь её раскручивать быстрей = подключить к своей машине.
И балуюсь на генераторе.

Но всё это было гораздо позже
Когда мельник рассказал свою историю до конца
Её лицо стало белее белого и она превратилась в приведение …






to dvm99i

Цитата:

Сообщение от dvm99i

Вы экспериментировали на меандре= прямоугольном сигнале.
На нём не должно быть изменений в разнице между Ср.знач. и СКЗ при изменении частоты.


Ну вот ... начинается ..... здесь играем, а здесь рыбу заворачиваем


А вопрос то стоял по-другому.
Цитата:

Сообщение от Admin

А давайте спросим у Димы.

Цитата:

Сообщение от dvm99i
но обязательно по СКЗ!

Дима, колись = чего вы хотите увидеть по СКЗ?


А Дима = крепкий орешек = не колется.

Я так понял = убрать зависимость от частоты и меандра = зачем?
Может простая средняя арифметическая полезного чего покажет ... а Дима на корню хочет отрубить ей ноги



Цитата:

Сообщение от dvm99i
Понимаю, что с вычислительными возможностями Меги для таких расчётов беда.

Админ, я вот, честно говоря, не понял у вас одна Мега и для ленты, и для расчёта?
Или уже две Меги используется?


Мега одна.
Так что перспективы для поиграться = есть.


Цитата:

Сообщение от dvm99i

Эти числа, тем более в таком непереваримом виде, нет смысла разглядывать.



Продолжение следует ...






Цитата:

Сообщение от dvm99i
Эх!
Не очень генератор у вас = только квадратный сигнал, а это далеко не сигнал ДК.
Здесь бы нужен "хитрый" генератор, чтоб форму трапеции давал с возможностью изменения скважности.
В далёком приближении такой походит на сигнал ДК.

Я знаю где есть подходящий генератор.

Это ДК Диминой Паджеры.


Но всё это было гораздо позже
Когда мельник рассказал свою историю до конца
Её лицо стало белее белого и она превратилась в приведение …

.

agnec 12.10.2019 19:25

Теперь понятно. Если берём одинаковое количество "1" и "9", то независимо от их порядка следования результат всегда такой и будет. Как говорится от перемены мест слагаемых сума не меняется. Но если брать не этот фиксированный набор, а скользящую выборку, то результат при малом количестве элементов выборки и большой "амплитуде" наверняка "приятно" удивит.
Например из последовательности 1,9,1,9,1,9,1,9,1,9,1,9,... выдёргиваем последовательно чётное число элементов
получаем каждый раз среднее 5 и скз 6,4
и это независимо от того сколько мы взяли значений, 2 или 222, главное что чётное количество для чётной последовательности
а теперь берём нечётное и получаем выборки 1,9,1 и 9,1,9
соответственно начинаются прыжки среднего с 3,7 на 6,3 (разница 2,6) и скз с 5,3 на 7,4 (разница 2,1). По разнице значений скз на ленте будет выглядеть немного лучше среднего.
для 33 элементов в выборке среднее скачет с 4,9 на 5,1 (разница 0,2) и скз с 6,3 на 6,5 (разница 0,2). Вот они и сравнялись. Теперь на ленте, где нет ни одного числа, один будут скакать на равных.
для 333 элементов среднее скачет с 4,99 на 5,01 (разница 0,02) и скз с 6,39 на 6,41 (разница 0,02). И снова всё гладко.
А теперь посмотрим на это глазами ардуино. Для вычисления среднего нужно просто суммировать значения и в конце поделить на их количество.
Для вычисления СКЗ надо суммировать не полученные с АЦП значения, а их квадраты. Т.е. уже получаем замедление работы при каждом считывании показаний. Ну и в конце добавляется извлечение корня.
Админ творит ЧУДО. В нём на ленте чисел нет. Всё относительно. При большом количестве данных простое среднеарифметическое может оказаться предпочтительней ресурсозатратного среднеквадратического.

Цитата:

Сообщение от Adin
Для своих игрушек инструкций писать не надо.... а мне вот приходится и на это убивать время

Не поверите, но и для своих игрушек пишу комментарии чуть не в каждой строчке и кучу многострочных, чтобы не забыть о чём вобще речь :(

Цитата:

Сообщение от Adin
И кстати .... чем играется = ??? ... жадина говядина
Неужели оборотами и миллисекундами .... до градусов ещё не дошёл?

Нет, до градусов ещё далеко. Всецело отдаюсь вольтметру для ДК. 12 кнопок для управления этим вольтметром только-только хватило :)
И посматриваю на ДПКВ. Но пока только посматриваю. Ещё не вникал что за сигнал с него идёт, но пошлые мысли на счёт его уже имеются ;)
Кстати, если кто подскажет как использовать сигнал с датчика ABS (датчик скорости на моей гранте отсутствует), то буду премного благодарен ;) Это для банального спидометра и расхода в никчемных литрах на сотню. Хотя имеющийся у меня сейчас показометр длительности впрыска вполне достаточен для определения расхода в понятиях "экономно" и "вёдрами".

Admin 12.10.2019 20:07



Про ABS и остальное позже.


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

Цитата:

Сообщение от dvm99i

Эти числа, тем более в таком непереваримом виде, нет смысла разглядывать.


Это монитор порта



Цитата:

Сообщение от dvm99i

Эти числа, тем более в таком непереваримом виде, нет смысла разглядывать.


Смысл = есть.
В excel график можно построить из этих чисел .... когда у вас будет сама плата ардуино
Могу в usb порт ввести данные с любой точки в программе.


Но из меня такой программист = я не знаю как их пустить в столбик ... и разбить по столбикам
Они у меня бегут только в горизонтальной строчке.

Сам графики строить НЕ собираюсь = :snooks: .
Мне и ленты хватает .... поэтому и не копал этот вопрос глубоко.


Может чего Атос подскажет по этому вопросу.

Впрочем ....
Пусть копируют строчку = ctrl + с .... и далее в excel сами разбивают по столбикам

Цитата:

Сообщение от dvm99i

Эти числа, тем более в таком непереваримом виде, нет смысла разглядывать.


Дима = монстр.
И он найдёт смысл даже там где его на первый взгляд = нету.






Цитата:

Сообщение от agnec

Админ творит ЧУДО. В нём на ленте чисел нет. Всё относительно.


Но когда любопытная молодёжь достанет.
Могу и опуститься до графиков .... на самое дно




Цитата:

Сообщение от agnec

Нет, до градусов ещё далеко. Всецело отдаюсь вольтметру для ДК.


Вот этот алгоритм для игрушки ... с прошедшей страницы


Цитата:

Сообщение от agnec

Нет, до градусов ещё далеко. Всецело отдаюсь вольтметру для ДК.

Через делитель не меньше, чем на 4 .... не к ДК, а к плюсу АКБ.

И из вольтметра на уровне 0,005 вольт ... получится амперметр с чудесными свойствами.

Конечно, манеры вождения там не будет, но будет техническое состояние АКБ и его генератора.
(программа сейчас заточена на ДК = до 1,2 вольта ... и надо добавлять амплитуду ... позже сделаю)

Всё должно быть красиво.
И вместо банальных вольт на АКБ надо сразу вынимать смысл происходящего и ... показывать его.
И лента на это способна.

Именно эти примеры и показываю.
Не только измеряем ... но вынимаем смысл и ... его показываем.



Цитата:

Сообщение от agnec

Кстати, если кто подскажет как использовать сигнал с датчика ABS (датчик скорости на моей гранте отсутствует), то буду премного благодарен ;) Это для банального спидометра и расхода в никчемных литрах на сотню.
Хотя имеющийся у меня сейчас показометр длительности впрыска вполне достаточен для определения расхода в понятиях "экономно" и "вёдрами".


Поднять импульс на ABS ... а у него от скорости меняется амплитуда.
Можно аналоговым входом ардуино.
Нужно задать точку срабатывания счёта.

Примерно 20 ... 24 импульса = 1 метр .... импульс = 4 ... 5 сантиметров.

И делайте акселерометр для ленты ... импульсов на 1 метр достаточно ... чтобы не измерять время периода.

Вспомнил ...
Был диск ABS где было 50 импульсов на 1 метр ... каждые 2 сантиметра = импульс.
С таким диском можно сделать акселерометр покруче, чем на подводной лодке.

На ленте можно сделать работу акселерометра похожую на фантастику.
Если вынимать смысл и показывать его.


Впрочем, если при переключении на 3-ю передачу ... дорога уже кончается и дальше живут медведи.
Лучше считать вёдра.




Цитата:

Сообщение от agnec

Нет, до градусов ещё далеко ....


Ничего страшного
Правду легко увидеть
Можно и с открытыми глазами ... можно и с закрытыми.

Но всё это было гораздо позже
Когда мельник рассказал свою историю до конца
Её лицо стало белее белого и она превратилась в приведение …




dvm99i 12.10.2019 23:00

Цитата:

Атос:
Для вычисления СКЗ надо суммировать не полученные с АЦП значения, а их квадраты. Т.е. уже получаем замедление работы при каждом считывании показаний. Ну и в конце добавляется извлечение корня.
Ну, что поделаешь... За правду нужно платить!
Зато, при такой правде вы будете уверены, что если уровень сигнала поднялся, значит богаче, и наоборот.

Цитата:

Админ:
Смысл = есть.
В excel график можно построить из этих чисел .... когда у вас будет сама плата ардуино
Могу в usb порт ввести данные с любой точки в программе.

Я уже понял то, что вы показали...

НО, в ситуации с прямоугольным сигналом, когда ардуино врёт
(из-за выборки по времени короткой), смысла разгребать эти числа нету.

Цитата:

Админ:
Мега одна.
Так что перспективы для поиграться = есть.
Вот это очень приятная новость!

Админ,
Мне кажется, не стоит впихивать невпихуемое!
Надо разделить: Одна ардуино занимается чисто лентой= выполняет функции вывода.
Вторая= занимается математикой.

Это ж типовой подход в выч-технике: есть центральный процессор и процессор ввода-вывода (порт).
Тогда никто никому не мешает и всем всего хватает....

И ещё момент, на который вы не ответили http://multi-set.ru/forum/showpost.p...7&postcount=60
Цитата:

dvm99i:
Админ,
а сколько у вас значений берётся при вычислении среднего арифметического?


Цитата:

Админ:
Я знаю где есть подходящий генератор.

Это ДК Диминой Паджеры.

Да!
И для игрушек "на столе" он не подходит = это далеко не прямоугольный сигнал.
Поэтому и не хочется вранья на ленте...

На футбол - значит на футбол.
К маме- значит к маме!










Admin 12.10.2019 23:18

Цитата:

Сообщение от dvm99i

И ещё момент, на который вы не ответили http://multi-set.ru/forum/showpost.p...7&postcount=60
Цитата:

dvm99i:
Админ,
а сколько у вас значений берётся при вычислении среднего арифметического?


Ответил здесь http://multi-set.ru/forum/showpost.p...6&postcount=59

Цитата:

Сообщение от Admin

Применил сглаживание по формуле ( выход = ((вход - выход) * К ) +выход )
К - число от 0,1 и меньше. Чем меньшее К, тем сильнее сглаживание.
Эта формула .... на видео выше ... работает параллельно квадратичному усреднению и ... прижимает расчёты по СКЗ в итоге


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

Добавлю.
Эта формула запросто покажет положение средней не за 10 минут, а за 1 час .... и даже больше.
На что убьётся вся Мега .... если поставить ей задачу по другому = вычислять среднюю скользящую.

С этой формулой бодается на этих видео квадратичное усреднение.

... ...

Красная и синяя точка работают по формуле сглаживания .... одна быстрей ... другая медленней = суммирует 10 минут.
Голубая точка = квадратичное усреднение.

Цитата:

Сообщение от dvm99i

а сколько у вас значений берётся при вычислении среднего арифметического?

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

выход = ((вход - выход) * К ) +выход .... где К - число от 0,1 и меньше (до 0,00001) ... чем меньшее К, тем сильнее сглаживание.

И работает эта формула ... один в один ...
С вычислением средней арифметической рассчитаной через сумму значений разделить на кол-во значений.
Могу и это показать на видео и с com-порта.

Поэтому и называю её средней арифметической .... хотя формула вовсе не та что слева.




Цитата:

Сообщение от dvm99i

Админ,
Мне кажется, не стоит впихивать невпихуемое!


Именно по этому принципу и работает усреднение за 10 минут.

Впихнуть в Мегу такое квадратичное усреднение = 10 минут ... просто не реально.
На 20 ... 30 секундах = кончится.


Другими словами ...
Почитайте ещё раз блок-схему = там речь идёт о 10 минутах усреднений.
Цитата:

Сообщение от dvm99i

Вот это очень приятная новость!

Эта новость отменяет ваши попытки заменить эту формулу на квадратичную.

Цитата:

Сообщение от dvm99i

Цитата:

Админ:
Потому что это познавательная игрушка.
Если примените мою формулу, этой игрушке цены не будет!:good:

Другими словами = :snooks:




Цитата:

Сообщение от dvm99i

И ещё момент, на который вы не ответили ...

Не может этого быть!




dvm99i 13.10.2019 09:54

Здравствуйте, Админ!


Цитата:

Админ:
Ответил здесь http://multi-set.ru/forum/showpost.p...6&postcount=59

Всё, врубился...
Теперь понятно, почему быстрее....

Цитата:

Админ:
Поэтому и называю её средней арифметической ....

Не возражаю...

Цитата:

Админ:
Впихнуть в Мегу такое квадратичное усреднение = 10 минут ... просто не реально.
На 20 ... 30 секундах = кончится.

Даааа... проблема...

Но это не повод брать
никелированную кровать... с тоумбочкой...



Хочется всё же славянский шкаф!




Админ, а как вы в расчётах в степень возводите?

Наткнулся сегодня на интересный момент в одном ресурсе http://arduino.ru/forum/pesochnitsa-...-napryazheniya

Цитата:

Sonologist пишет:
3. Прочел, что возведение в степень Ардуино делает намного медленнее, нежели умножение. Отсюда вопрос: имеет ли смысл при рассчетах не возводить показатель в квадрат, а просто перемножать его само на себя?

Цитата:

ЕвгенийП пишет:
Нормальные люди именно так и делают.


Как вам такое?
Не станет ли это спасением славянского шкафа?




Admin 13.10.2019 13:07

Здравствуйте dvm99i.


Цитата:

Сообщение от dvm99i

Цитата:

ЕвгенийП пишет:
Нормальные люди именно так и делают.
Как вам такое?


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

Померил разницу между возведением в степень и перемножением числа на самого себя.
Это 14 байт.

Вот скажите, Дима.
Положа руку на сердце.
Можно ли считать человека нормальным, если из 8192 байт оперативной памяти Меги.
14 байт разницы ... 0,17%
У него считается водоразделом между нормальными людьми и НЕ нормальными.

Дима.
Там где вы читаете про программирование посмотрите на итоги работ этих мастеров экономить байты в килобайтах.
Это детский сад.





А убивает Мегу совсем не возведение в степень.
А результат этого возведения = число, которое после этого получается.
+
Последующее складывание их в огромную стопку (стек) для вычисления средней.
Этот массив убивает динамическую память Меги.

Для поганых 10 минут даже представить не могу себе высоту этой стопки.


Теперь вернёмся к этому.
Цитата:

Сообщение от dvm99i

Эти числа, тем более в таком непереваримом виде, нет смысла разглядывать.

И из тех чисел, что вам показал ... в которых по вашему мнению нет смысла.
Возьму эти три числа.
1 190 2 36100.00 3 5575109

190*0,005=0,95 вольт ... 190 возводим степень = 36100 ... и их сумма из 1000 разных = пять с половиной миллионов

Теперь заходим сюда = https://metanit.com/cpp/tutorial/2.3.php

И не забываем это число = 36100:big_boss:
И что мы видим по ссылке .... числа больше 32767 увеличивают стопку в два раза ... как и 5 миллионов



Надо же какое счастливое совпадение ! ..... 36100 > 32767

Получается ...
Что ПОСЛЕ возведения в степень (или перемножения числа самого на себя).
Надо создавать массив для совсем другого порядка чисел .... которые едят байты в два :victory: раза больше.

А когда он огромный - это и убивает быстро динамическую память Меги.


Цитата:

Сообщение от dvm99i

Как вам такое?
Не станет ли это спасением славянского шкафа?

Другими словами = :snooks:

Большое время усреднения = важный элемент ... он главный .... это сумма ваших усилий.
И именно от этого элемента блок-схемы ставится точка опоры.



И даже не так .... а вот так

Цитата:

Сообщение от dvm99i

Цитата:

Админ:
Потому что это познавательная игрушка.
Если примените мою формулу, этой игрушке цены не будет!:good:






Цитата:

Сообщение от dvm99i

Но это не повод брать
никелированную кровать... с тумбочкой...
Хочется всё же славянский шкаф!


А зачем вам славянский шкаф?

Возьмите Грюндиг ... 4 дорожки ... стереофония ...











P.S.

И ещё раз о нормальных и НЕ нормальных.

Цитата:

Сообщение от dvm99i

Цитата:

ЕвгенийП пишет:
Нормальные люди именно так и делают.
Как вам такое?


Когда препятствие непреодолимо с ним поступают по-другому.
А не бьются лбом о стенку.

Когда подключите к ДК своей Паджеры.
Покажете что именно вы имеете в виду под недостатком= докажите что есть недостаток.
И посмотрим на разницу с квадратичной формулой.

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


Глупцы героев строят - бросаются вперёд
Нормальные герои всегда идут в обход.








P.S.S.


to agnec

Цитата:

Сообщение от agnec

Всецело отдаюсь вольтметру для ДК. 12 кнопок для управления этим вольтметром только-только хватило :)


:thank_you
О чём всегда и была речь ...
Дерево процессов огромное ... лабиринт Минотавра ... букв = нет ... чисел = нет ... только цветные лампочки
И это цена высокой скорости работы и фантастической визуализации быстротекущих процессов.
Впрочем ... как и медленных.

Пол года не мог сдвинуть этот воз с места.
Пока не определился с минимумом кнопок.
А в меню поставил настоящего монстра которому нет преград с интерфейсом.
Теперь чего добавить = нет проблем


agnec 13.10.2019 23:57

Всем привет !
Цитата:

Сообщение от dvm99i
Админ, а как вы в расчётах в степень возводите?
Наткнулся сегодня на интересный момент в одном ресурсе http://arduino.ru/forum/pesochnitsa-...-napryazheniya
Цитата:

Сообщение от Sonologist
3. Прочел, что возведение в степень Ардуино делает намного медленнее, нежели умножение. Отсюда вопрос: имеет ли смысл при рассчетах не возводить показатель в квадрат, а просто перемножать его само на себя?

Цитата:

Сообщение от ЕвгенийП
Нормальные люди именно так и делают.

Как вам такое?
Не станет ли это спасением славянского шкафа?

Не станет. Определил массив из 1400 значений. Заполнил его случайным образом значениями от 0 до 1023 (закос под АЦП).Посчитал для него среднеарифметическое и тремя способами среднеквадратическое. В одном случае использовал для возведения в степень функцию sq(), в другом pow(), а в третьем умножал само на себя.
1. Среднеарифметическое считается в 4,2 раза быстрее ср.кв. :on_the_qu
2. Перемножение само на себя по времени не отличается от использования функции sq() (что и требовалось доказать).
3. Функция pow() в 4,6 раза тормознее "аналогов" и почти в 20 раз тормознее среднеарифметического. Но зато позволяет возводить даже в дробную степень (что нам совершенно не требуется).
4. Функция pow() почему-то даёт несколько отличающийся от других способов результат (а как же "медленно но верно" ?).
Код:

Время выполнения = 2156
Сумма значений элементов массива = 710833
Среднеарифметическое = 507
---------------------------------------------
Время выполнения = 9128
Сумма значений sq() элементов массива = 485033911
Среднеквадратическое = 588
---------------------------------------------
Время выполнения = 42016
Сумма значений pow() элементов массива = 485034176
Среднеквадратическое = 588
---------------------------------------------
Время выполнения = 9128
Сумма значений квадратов элементов массива = 485033911
Среднеквадратическое = 588

Время выполнения в микросекундах.


Часовой пояс GMT +3, время: 00:37.

Русский vBulletin v3.5.0, Copyright ©2000-2024, Jelsoft Enterprises Ltd.
Перевод сделал zCarot
Компания Multi-Set. 2006 г.