реклама на сайте
подробности

 
 
> Даталоггер для акселерометра
Herz
сообщение Nov 8 2016, 08:22
Сообщение #1


Гуру
******

Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287



Нужно быстро собрать портативное устройство для записи сигналов с акселерометра. Такой даталоггер как здесь, только для своего акселерометра.
В идеале - подключаемое по SPI к МК устройство с картой памяти. И чтобы запись велась в легко воспроизводимом на ПК формате. Есть что-то похожее, миниатюрное?
Я с записью на карту самостоятельно не сталкивался и времени осваивать нет.
Посоветуйте решение, пожалуйста.
Go to the top of the page
 
+Quote Post
2 страниц V  < 1 2  
Start new topic
Ответов (15 - 26)
skripach
сообщение Nov 8 2016, 16:25
Сообщение #16


■ ■ ■ ■
*****

Группа: Свой
Сообщений: 1 100
Регистрация: 9-08-06
Пользователь №: 19 443



Цитата(Herz @ Nov 8 2016, 19:00) *
Что и как сделано, не укажете конкретно? "Прицепить" - не проблема, а дальше? Как создавать, писать, модифицировать файл? Дайте ссылочку, если не трудно, на то, что имеете в виду.

Здесь берём библиотеку, там же есть примеры.
Вам нужно реализовать найти/адаптировать низкоуровневые функции для чтения/записи на карту:
Цитата
disk_status - Get device status
disk_initialize - Initialize device
disk_read - Read sector(s)
disk_write - Write sector(s)
disk_ioctl - Control device dependent functions
get_fattime - Get current time


А дальше всё просто:

Код
FATFS FatFs;   /* Work area (file system object) for logical drive */

int main (void)
{
    FIL fil;       /* File object */
    char line[82]; /* Line buffer */
    FRESULT fr;    /* FatFs return code */


    /* Register work area to the default drive */
    f_mount(&FatFs, "", 0);

    /* Open a text file */
    fr = f_open(&fil, "message.txt", FA_READ);
    if (fr) return (int)fr;

    /* Read all lines and display it */
    while (f_gets(line, sizeof line, &fil))
        printf(line);

    /* Close the file */
    f_close(&fil);

    return 0;
}


Также есть функция f_puts rolleyes.gif


--------------------
Делай что должен и будь что будет.
Go to the top of the page
 
+Quote Post
Herz
сообщение Nov 8 2016, 19:03
Сообщение #17


Гуру
******

Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287



Цитата(blackfin @ Nov 8 2016, 18:02) *
Двух гигабит, насколько я понимаю, для записи в течении дня должно хватить..

Тоже вариант, конечно, спасибо. Но с карточкой было бы удобнее. И с точки зрения объёма, и с точки зрения переноса информации на ПК.
А почему именно две?
Цитата(AlexandrY @ Nov 8 2016, 18:03) *
Есть такой дивайс -

Спасибо, конечно. Но боюсь не справиться с Вашим дивайсом при необходимости настроек и смены режимов акселерометра. На PIC-е мне это легко.
Цитата(skripach @ Nov 8 2016, 18:25) *
Здесь берём библиотеку, там же есть примеры.
Вам нужно реализовать найти/адаптировать низкоуровневые функции для чтения/записи на карту:
А дальше всё просто:

Э-хе-хе... Возможно, оно и несложно, и я когда-нибудь обязательно воспользуюсь советом и потренируюсь. Но сейчас мне надо быстро и надёжно.
Go to the top of the page
 
+Quote Post
blackfin
сообщение Nov 8 2016, 19:16
Сообщение #18


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(Herz @ Nov 8 2016, 22:03) *
Тоже вариант, конечно, спасибо. Но с карточкой было бы удобнее. И с точки зрения объёма, и с точки зрения переноса информации на ПК.
А почему именно две?

Потому, что телепаты.. biggrin.gif

Считая, что датчик трех-осевой, 16-ти битный, с частотой семплирования 1 кГц, находим:

3*16*1000*3600*12 = 2,073,600,000 бит за 12 часов записи.
Go to the top of the page
 
+Quote Post
Herz
сообщение Nov 8 2016, 19:23
Сообщение #19


Гуру
******

Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287



Снимаю шляпу... biggrin.gif
Go to the top of the page
 
+Quote Post
skripach
сообщение Nov 8 2016, 20:18
Сообщение #20


■ ■ ■ ■
*****

Группа: Свой
Сообщений: 1 100
Регистрация: 9-08-06
Пользователь №: 19 443



Цитата(Herz @ Nov 8 2016, 22:03) *
Э-хе-хе... Возможно, оно и несложно, и я когда-нибудь обязательно воспользуюсь советом и потренируюсь. Но сейчас мне надо быстро и надёжно.

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


--------------------
Делай что должен и будь что будет.
Go to the top of the page
 
+Quote Post
jorikdima
сообщение Nov 8 2016, 21:43
Сообщение #21


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



Я в целом понял многократное нежелание разбираться в фатфс, но присоединюсь, что как раз таки этот путь может быть самый быстрый и простой.
Про распберри пи из первых постов тоже подумал бы кстати.
Go to the top of the page
 
+Quote Post
ViKo
сообщение Nov 9 2016, 05:19
Сообщение #22


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Самый быстрый и простой - это SPI flash память на плате и USART в PIC для передачи в комп.
Go to the top of the page
 
+Quote Post
Эдди
сообщение Nov 9 2016, 05:21
Сообщение #23


Знающий
****

Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250



А я бы не мучился с идиотской устаревшей vfat. Либо писать напрямую (вся флешка == файл) — все равно ведь по сути файл будет одним-единственным, либо завести нормальную ФС (скажем, ext2), а не эту долбаную fat23…
Еще один вариант — набросать на коленке элементарнейшую одноуровневую ФС (без поддиректорий). Создать под нее модуль ядра не так уж и сложно. В итоге и компьютер будет ее видеть как флешку с ФС, и МК сможет организовывать на ней хранение данных в виде отдельных файлов.
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Nov 9 2016, 06:13
Сообщение #24


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(Herz @ Nov 8 2016, 21:03) *
Спасибо, конечно. Но боюсь не справиться с Вашим дивайсом при необходимости настроек и смены режимов акселерометра. На PIC-е мне это легко.


Да вы совершенно правы.

Файловая система, FAT или там еще что это даже не половина дела.
Вся сложность в реализации гибкости применения.

Здесь могу предложить несколько вариантов.
Конфигурирование настроек какие пожелаете с помощью конфигурационого текстового файла на той же микро SD карте.
Конфигурировние в терминале типа TeraTerm по USB.
Конфигурирование через программу FreeMaster. Она же обеспечивает чтение и прорисовку сигналов в реальном времени как осциллограф.

Естественно все в исходниках и с исчерпывающей документацией.

Реализация всех трех вариантов в цене учтена.

Правда мое предложение действует сегодня до обеда по GMT+2. biggrin.gif
Go to the top of the page
 
+Quote Post
Ruslan1
сообщение Nov 9 2016, 10:35
Сообщение #25


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



Ну вы блин даете.
файловые системы, распберри, легко-тяжело.
Дайте человеку ссылку на любой китайский USB логгер для аналогового входа с мозгами, неужели таких нет готовых?
или какой-нибудь готовый кит, который в качестве логгера может работать
Когда свой такой логгер лет 10 назад делал - так чего только не находил... А сейчас прогресс вперед ушел (наверное).
Go to the top of the page
 
+Quote Post
Onkel
сообщение Nov 10 2016, 07:51
Сообщение #26


Знающий
****

Группа: Свой
Сообщений: 708
Регистрация: 8-05-11
Из: Чг
Пользователь №: 64 861



ардуина любая потянет.
Go to the top of the page
 
+Quote Post
skripach
сообщение Nov 10 2016, 18:24
Сообщение #27


■ ■ ■ ■
*****

Группа: Свой
Сообщений: 1 100
Регистрация: 9-08-06
Пользователь №: 19 443



Цитата(Ruslan1 @ Nov 9 2016, 13:35) *
Дайте человеку ссылку

Так почему бы вам и не дать эту самую ссылку? santa2.gif


--------------------
Делай что должен и будь что будет.
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 01:56
Рейтинг@Mail.ru


Страница сгенерированна за 0.01471 секунд с 7
ELECTRONIX ©2004-2016