tandav / ultrasonic-stethoscope

My bachelor and master thesis at Voronezh State University
6 stars 1 forks source link

Timing issues #13

Closed tandav closed 7 years ago

tandav commented 7 years ago

Tryna find the best way to get data from ADC. Just found out that this ADC is not capable of persistent data gathering mode. So there is only Start-Stop mode.

SAMPLE_FREQ (akaRATE) and BSIZE are set to their physical maximum.

tandav commented 7 years ago

estimated time of data gathering completion, if MAX_BUFFER_SIZE and MAX_FREQ: 524288 / 80000000 = 0.0065536s ≈ 7ms

tandav commented 7 years ago

Суть в том, что данные собираются очень быстро и не успевают так часто отрисовываться (faster than 1ms). Короче нужно reduce после каждого буфера, а не в конце buffer_array. Просто этот buffer_array быстро разрастается до максимума в 2GB

tandav commented 7 years ago

New Timing System explanation

file mar 14 12 26 28 am

values_to_draw is now Queue

tandav commented 7 years ago

https://github.com/tandav/ultrasonic-stethoscope/pull/13/commits/0e46ac3772629ae1ec7b38975240f394c6c5b4fe

теперь обычный массив вместо очереди. Скорость увеличилась, но все равно не рекомендуется ставить x_axis_points > 20000. Потому что уже UI начинает to freeze. И появляется варик артефактов, потому что async и другой поток может уже изменять массив, хотя еще прошлый не отрисовался.

tandav commented 7 years ago

Capability to take any number of values from buffer

file mar 14 1 48 32 am

tandav commented 7 years ago

Короче суть в том что старт-стоп занимает 190ms (очень долго), теряется куча данных. Это должно делаться в идеале за 7ms. Написал чувакам на почту, жду ответа. Если они подтвердят, то походу future проекта почуть изменится

tandav commented 7 years ago

adc

Measurement table on google spreadsheets