Запись на SD карту

vvadim
Offline
Зарегистрирован: 23.05.2012

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

Потянет ардуина с SD шилдом такое задание?

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

А зачем снимать показание  каждые 50 мкс, если само событие происходит раз в 2000мкс? Я про частоту шима имею ввиду, если ничего не напутал с переводом из герц. А лучше и записывать на SD не с точной периодичностью, а только если в измеряемых параметрах что-то изменилось.

vvadim
Offline
Зарегистрирован: 23.05.2012

Ошибся, не микро а милисек. Запись каждые 50 мс

vvadim
Offline
Зарегистрирован: 23.05.2012

dimax пишет:

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

 

Точная периодичность нужна для контроля по времени. Если записывать только при изменении параметров, то как контролировать время?

Geronimo
Offline
Зарегистрирован: 06.05.2013

Писать время когда поменялось и значение на что поменялось

vvadim
Offline
Зарегистрирован: 23.05.2012

Вариант 1.

             Каждые 50мс записываю значение шим и dir (0 или 1).

             Читаю с карты каждые 50 мс эти параметры и управляю мотором.

Вариант 2.

             Запускаю таймер. В случае изменения параметров шим или dir

             записываю на карту время, шим , dir.

             Как здесь считывать данные с карты и организовать управление мотором?

kisoft
kisoft аватар
Offline
Зарегистрирован: 13.11.2012

В варианте 2 нужно еще записывать время, чтобы при чтении рассчитать время, когда применить это изменение

Типа такого:

Time PWM Dir

00000012 36 0
00000110 38 0
00000211 23 1
00005000 18 0

Т.е. сначала применяем 36 и 0, через (110-12) применяем 38 и 0, еще через (211 -110) применяем 23 и 1 и т.п. Здесь есть варианты, писать абсолютное время и относительное (между изменениями). Второе - проще и компактней, но менее точное (ошибка будет расти).

Я описал примерный алгоритм, тонкости нужно рассматривать отдельно.

vvadim
Offline
Зарегистрирован: 23.05.2012

Спасибо. А какой вариант правильнее использовать. Проще , мне так кажется, первый. Хотя я могу ошибаться.

Geronimo
Offline
Зарегистрирован: 06.05.2013

Как часто меняются параметры?

Geronimo
Offline
Зарегистрирован: 06.05.2013

Если редко, то первый будет писать лишнюю инфу

vvadim
Offline
Зарегистрирован: 23.05.2012

Я где то читал, что параметры сохраняются каждые 30-50 мс. А параметры могут меняться произвольно во времени. 

Что значит лишняя информация?

Geronimo
Offline
Зарегистрирован: 06.05.2013

Пример: минуту параметры не менялись. Ты запишешь скол ько одинаковых записей? 1 запись в 50 мс. Т.е за минуту будет 1200 одинаковых записей

vvadim
Offline
Зарегистрирован: 23.05.2012

Ну это не пугает, пусть пишет.

kisoft
kisoft аватар
Offline
Зарегистрирован: 13.11.2012

Первый вариант проще в реализации, второй - экономнее. Решать Вам.
По первому варианту легко посчитать об"емы, например за сутки. Посчитайте оба варианта и будет решение.