Myp писал(а):получил деталюхи...
я самое главное пропустил, ты сейчас с каким железом эксперименты делашь ?
hx711 ++ ?
Технический форум по робототехнике.
Myp писал(а):получил деталюхи...
Myp писал(а):Где отладчик? я требую отладчик чтобы такты на бумажке посчитать.
Возвращает количество микросекунд, прошедших с момента начала выполнения программы Arduino. Возвращаемое число переполнится (сбросится в 0) спустя приблизительно 70 минут. На платах Arduino с тактовой частотой 16 МГц (Duemilanove и Nano) разрешение этой функции составляет четыре микросекунды (т.е. возвращаемое значение будет всегда кратно четырем).
setar писал(а):Myp писал(а):получил деталюхи...
я самое главное пропустил, ты сейчас с каким железом эксперименты делашь ?
hx711 ++ ?
Dmitry__ писал(а):Тебе просто перед вызовом проверяемой функции надо прочитать аппаратный таймер, а после выполнения функции еще раз прочитать таймер и сравнить со старым значением. В ардуино это - micros()
int HX711_ADC::getDataInt() // быстрая
{
int data = 0;
lastSmoothedData = smoothedData();
data = (lastSmoothedData >> divBit) - tareOffset ;
return data;
}
float HX711_ADC::getData() // родная медленная
{
long data = 0;
lastSmoothedData = smoothedData();
data = (lastSmoothedData >> divBit) - tareOffset ;
float x = (float)data / calFactor;
return x;
}
Myp писал(а):с флотами и делением 50 микросекунд, без флотов и без деления 10 микросекунд.
Myp писал(а): а под нагрузкой цифра улетает за 4000000
деление на калибровочный фактор сильно уменьшает показания и убирает лишние флуктуации.
Myp писал(а):плюс в самой процедуре чтения данных с АЦП используется конечно же digitalWrite и digitalRead
Myp писал(а):а ардуина делает 1 импульс за 13 микросекунд (не уверен, так в гугле написано)
pin_nClock_LOW;
address & i ? pin_SDIO_HIGH : pin_SDIO_LOW;
asm volatile ("nop");
pin_nClock_HIGH;
Myp писал(а):от погоды на марсе и то больше пользы бывает.
Myp писал(а):датчик срабатывает на восходящей части графика
Dmitry__ писал(а):Если будет претензия - это отход от стола, то увеличивай картинку фронта 2-го горба. Рандом однако...
Myp писал(а):чем раньше он сработает, тем меньше лишних шагов успеет сделать мотор, меньше
Myp писал(а):то есть амплитуда на графике таки это быстродействие системы в комплексе.
Myp писал(а):убрав затупы в коде всё равно реакция датчика меньше 22 мс не получится.
Dmitry__ писал(а): Т.е. достаточно всю обработку делать за 1/80 /5 = 2.5 ms.
Dmitry__ писал(а):Но с таким отличием фаз как на скриншоте, я бы таки разбирался
22:08:48.005 -> val; 110 6
22:08:48.005 -> val; 115 7
22:08:48.005 -> val; 123 7
22:08:48.005 -> val; 128 7
22:08:48.005 -> val; 133 6
22:08:48.039 -> val; 139 8
22:08:48.039 -> val; 145 7
22:08:48.039 -> val; 151 7
22:08:48.039 -> val; 158 6
22:08:48.039 -> val; 165 7
22:08:48.072 -> val; 175 7
22:08:48.072 -> val; 187 8
22:08:48.072 -> val; 199 6
22:08:48.072 -> val; 209 7
22:08:48.072 -> val; 218 7
22:08:48.107 -> val; 227 7
22:08:48.107 -> val; 234 6
22:08:48.107 -> val; 245 8
22:08:48.107 -> val; 255 7
22:08:48.107 -> val; 264 7
22:08:48.141 -> val; 271 6
22:08:48.141 -> val; 279 7
22:08:48.141 -> val; 287 7
22:08:48.141 -> val; 295 8
22:08:48.141 -> val; 301 6
22:08:48.176 -> val; 308 7
22:08:48.176 -> val; 316 7
22:08:48.176 -> val; 325 7
22:08:48.176 -> val; 334 6
22:08:48.176 -> val; 345 7
22:08:48.209 -> val; 353 8
22:08:48.209 -> val; 360 6
22:08:48.209 -> val; 367 6
22:08:48.209 -> val; 372 7
22:08:48.209 -> val; 378 7
22:08:48.243 -> val; 381 6
22:08:48.243 -> val; 385 7
22:08:48.243 -> val; 388 7
22:08:48.243 -> val; 392 7
22:08:48.243 -> val; 397 6
22:08:48.277 -> val; 401 6
22:08:48.277 -> val; 406 7
22:08:48.277 -> val; 412 8
22:08:48.277 -> val; 418 6
22:08:48.277 -> val; 423 6
22:08:48.311 -> val; 430 7
22:08:48.311 -> val; 438 7
22:08:48.311 -> val; 447 6
22:08:48.311 -> val; 456 7
22:08:48.311 -> val; 463 7
22:08:48.345 -> val; 472 7
22:08:48.345 -> val; 481 6
22:08:48.345 -> val; 491 6
22:08:48.345 -> val; 503 7
22:08:48.378 -> val; 516 8
22:08:48.378 -> val; 533 6
22:08:48.378 -> val; 553 6
22:08:48.378 -> val; 576 7
22:08:48.378 -> val; 601 7
22:08:48.412 -> val; 628 6
22:08:48.412 -> val; 654 7
22:08:48.412 -> val; 677 7
22:08:48.412 -> val; 702 7
22:08:48.412 -> val; 725 6
22:08:48.412 -> val; 747 6
22:08:48.446 -> val; 770 7
22:08:48.446 -> val; 792 7
22:08:48.446 -> val; 813 7
22:08:48.446 -> val; 834 6
22:08:48.479 -> val; 853 7
22:08:48.479 -> val; 874 7
22:08:48.479 -> val; 896 6
22:08:48.479 -> val; 921 7
22:08:48.479 -> val; 946 8
22:08:48.512 -> val; 974 7
22:08:48.512 -> val; 1003 6
22:08:48.512 -> val; 1032 6
22:08:48.512 -> val; 1062 7
22:08:48.512 -> val; 1087 7
22:08:48.546 -> val; 1112 7
22:08:48.546 -> val; 1139 6
22:08:48.546 -> val; 1163 7
22:08:48.546 -> val; 1186 7
22:08:48.582 -> val; 1207 6
22:08:48.582 -> val; 1227 6
22:08:48.582 -> val; 1247 8
22:08:48.582 -> val; 1268 7
22:08:48.582 -> val; 1288 6
22:08:48.582 -> val; 1305 6
22:08:48.617 -> val; 1322 7
22:08:48.617 -> val; 1337 7
22:08:48.617 -> val; 1350 7
22:08:48.617 -> val; 1364 7
22:08:48.617 -> val; 1376 7
22:08:48.652 -> val; 1390 7
22:08:48.652 -> val; 1403 6
22:08:48.652 -> val; 1414 7
22:08:48.652 -> val; 1423 8
22:08:48.652 -> val; 1430 7
22:08:48.686 -> val; 1437 6
22:08:48.686 -> val; 1441 7
22:08:48.686 -> val; 1444 7
22:08:48.686 -> val; 1446 7
22:08:48.686 -> val; 1446 6
22:08:48.721 -> val; 1448 8
22:08:48.721 -> val; 1449 7
22:08:48.721 -> val; 1452 7
22:08:48.721 -> val; 1458 6
22:08:48.721 -> val; 1466 7
22:08:48.755 -> val; 1476 7
22:08:48.755 -> val; 1484 8
22:08:48.755 -> val; 1491 6
22:08:48.755 -> val; 1497 7
22:08:48.755 -> val; 1499 7
22:08:48.789 -> val; 1500 7
22:08:48.789 -> val; 1501 6
22:08:48.789 -> val; 1501 8
22:08:48.789 -> val; 1498 7
22:08:48.822 -> val; 1493 7
22:08:48.822 -> val; 1486 6
22:08:48.822 -> val; 1478 7
22:08:48.822 -> val; 1469 7
22:08:48.822 -> val; 1458 8
22:08:48.855 -> val; 1445 6
22:08:48.855 -> val; 1430 7
22:08:48.855 -> val; 1412 7
22:08:48.855 -> val; 1391 7
22:08:48.855 -> val; 1363 6
22:08:48.855 -> val; 1332 8
22:08:48.889 -> val; 1296 7
22:08:48.889 -> val; 1257 7
22:08:48.889 -> val; 1213 6
22:08:48.889 -> val; 1164 7
22:08:48.922 -> val; 1109 7
22:08:48.922 -> val; 1048 8
22:08:48.922 -> val; 982 6
22:08:48.922 -> val; 908 7
22:08:48.922 -> val; 831 7
22:08:48.956 -> val; 756 7
22:08:48.956 -> val; 679 6
22:08:48.956 -> val; 604 7
22:08:48.956 -> val; 531 8
22:08:48.956 -> val; 460 7
22:08:48.991 -> val; 391 6
22:08:48.991 -> val; 325 7
22:08:48.991 -> val; 264 7
22:08:48.991 -> val; 207 7
22:08:48.991 -> val; 159 7
23:43:13.220 : 1 of 30: z: 0.005Mean: 0.005000 Sigma: 0.000000 Min: 0.005 Max: 0.005 Range: 0.000
23:43:15.127 : 2 of 30: z: 0.010Mean: 0.007500 Sigma: 0.002500 Min: 0.005 Max: 0.010 Range: 0.005
23:43:17.039 : 3 of 30: z: 0.000Mean: 0.005000 Sigma: 0.004082 Min: 0.000 Max: 0.010 Range: 0.010
23:43:18.946 : 4 of 30: z: 0.010Mean: 0.006250 Sigma: 0.004146 Min: 0.000 Max: 0.010 Range: 0.010
23:43:20.859 : 5 of 30: z: 0.000Mean: 0.005000 Sigma: 0.004472 Min: 0.000 Max: 0.010 Range: 0.010
23:43:22.766 : 6 of 30: z: 0.010Mean: 0.005833 Sigma: 0.004488 Min: 0.000 Max: 0.010 Range: 0.010
23:43:24.678 : 7 of 30: z: 0.000Mean: 0.005000 Sigma: 0.004629 Min: 0.000 Max: 0.010 Range: 0.010
23:43:26.585 : 8 of 30: z: 0.010Mean: 0.005625 Sigma: 0.004635 Min: 0.000 Max: 0.010 Range: 0.010
23:43:28.498 : 9 of 30: z: 0.000Mean: 0.005000 Sigma: 0.004714 Min: 0.000 Max: 0.010 Range: 0.010
23:43:30.405 : 10 of 30: z: 0.010Mean: 0.005500 Sigma: 0.004717 Min: 0.000 Max: 0.010 Range: 0.010
23:43:32.317 : 11 of 30: z: 0.000Mean: 0.005000 Sigma: 0.004767 Min: 0.000 Max: 0.010 Range: 0.010
23:43:34.258 : 12 of 30: z: -0.102Mean: -0.003958 Sigma: 0.030060 Min: -0.102 Max: 0.010 Range: 0.112 //бажное считывание, что-то не сработало.
23:43:36.137 : 13 of 30: z: -0.003Mean: -0.003846 Sigma: 0.028883 Min: -0.102 Max: 0.010 Range: 0.112
23:43:38.043 : 14 of 30: z: 0.007Mean: -0.003036 Sigma: 0.027986 Min: -0.102 Max: 0.010 Range: 0.112
23:43:39.956 : 15 of 30: z: -0.003Mean: -0.003000 Sigma: 0.027037 Min: -0.102 Max: 0.010 Range: 0.112
23:43:41.863 : 16 of 30: z: 0.007Mean: -0.002344 Sigma: 0.026302 Min: -0.102 Max: 0.010 Range: 0.112
23:43:43.776 : 17 of 30: z: -0.003Mean: -0.002353 Sigma: 0.025516 Min: -0.102 Max: 0.010 Range: 0.112
23:43:45.682 : 18 of 30: z: 0.007Mean: -0.001806 Sigma: 0.024900 Min: -0.102 Max: 0.010 Range: 0.112
23:43:47.595 : 19 of 30: z: -0.003Mean: -0.001842 Sigma: 0.024236 Min: -0.102 Max: 0.010 Range: 0.112
23:43:49.501 : 20 of 30: z: 0.010Mean: -0.001250 Sigma: 0.023763 Min: -0.102 Max: 0.010 Range: 0.112
23:43:51.414 : 21 of 30: z: -0.005Mean: -0.001429 Sigma: 0.023204 Min: -0.102 Max: 0.010 Range: 0.112
23:43:53.320 : 22 of 30: z: 0.007Mean: -0.001023 Sigma: 0.022747 Min: -0.102 Max: 0.010 Range: 0.112
23:43:55.234 : 23 of 30: z: -0.007Mean: -0.001304 Sigma: 0.022286 Min: -0.102 Max: 0.010 Range: 0.112
23:43:57.139 : 24 of 30: z: 0.005Mean: -0.001042 Sigma: 0.021853 Min: -0.102 Max: 0.010 Range: 0.112
23:43:59.053 : 25 of 30: z: -0.010Mean: -0.001400 Sigma: 0.021483 Min: -0.102 Max: 0.010 Range: 0.112
23:44:00.959 : 26 of 30: z: 0.005Mean: -0.001154 Sigma: 0.021102 Min: -0.102 Max: 0.010 Range: 0.112
23:44:02.872 : 27 of 30: z: -0.005Mean: -0.001296 Sigma: 0.020720 Min: -0.102 Max: 0.010 Range: 0.112
23:44:04.785 : 28 of 30: z: -0.012Mean: -0.001696 Sigma: 0.020453 Min: -0.102 Max: 0.010 Range: 0.112
23:44:06.692 : 29 of 30: z: 0.000Mean: -0.001638 Sigma: 0.020100 Min: -0.102 Max: 0.010 Range: 0.112
23:44:08.604 : 30 of 30: z: -0.007Mean: -0.001833 Sigma: 0.019790 Min: -0.102 Max: 0.010 Range: 0.112
23:44:08.605 : Finished!
23:44:08.607 : Mean: -0.001833 Min: -0.102 Max: 0.010 Range: 0.112
23:44:08.608 : Standard Deviation: 0.019790
Myp писал(а):вобщем простите что отнимал время, чё толку тестить сотые доли если механика не в порядке.
if (((val_2 - val_1) > 15) and ((val_3 - val_2) > 50))