Sauvegarder des données sans microcontrôleur?


11

Existe-t-il un moyen de sauvegarder les données de tension directement (sans microcontrôleur) n'importe où, comme EEPROM, SDCARD, etc.?

Par exemple, j'utilise un capteur de pression MPX qui donne une sortie analogique de 0V à 5V. Au lieu de convertir les tensions en pression dans un microcontrôleur et d'économiser (ce qui prend du temps, de l'argent, de l'espace, etc ...), je veux d'abord enregistrer des données analogiques, puis prendre ces données sur mon ordinateur pour la conversion des tensions en pression.


29
Vous pouvez vous asseoir avec un multimètre et l'écrire avec un stylo et du papier. Ou utilisez l'instrumentation appropriée, qui contient finalement une sorte de MCU
Eugene Sh.

8
Toute solution analogique que vous pourriez imaginer coûte plus cher que le 2c pour un uc
PlasmaHH

18
Je voudrais juste mentionner que la carte SD elle-même contient également un mcu pour fournir les données de bus / stockage / lecture, etc.
magu_

1
Un enregistreur graphique compte-t-il?
Connor Wolf

7
Bande magnetique? :)
Jules

Réponses:


74

Vous ne pouvez pas utiliser une EEPROM ou tout autre moyen de stockage numérique sans d'abord convertir votre signal en numérique. L'utilisation d'un microcontrôleur est le moyen évident et simple de le faire.

Cependant, si vous voulez vraiment satisfaire votre homme des cavernes, achetez-en un:

Cela stocke des données analogiques de quelques 10s de Hz à quelques kHz. Vous devrez consulter des tablettes d'argile pour apprendre à l'utiliser.

Un problème que vous aurez, c'est que la fréquence d'intérêt est probablement inférieure à ce qu'elle peut enregistrer. La solution est que votre signal commande un oscillateur à tension variable, puis enregistre la sortie de cet oscillateur. En d'autres termes, modulez en FM votre signal basse fréquence.

Il existe des circuits intégrés qui mettent en œuvre la fonction d'oscillateur commandé en tension, mais cela serait beaucoup trop sensible et entrerait en conflit avec votre objectif rétro. Obtenez-en quelques-uns:

et faites le vôtre.

Une fois les données enregistrées, vous "rembobinez" (voir les tablettes d'argile) le support de stockage. Ensuite, "jouer" sur une carte son PC. Le PC trouve la fréquence du signal, à partir de celle qui se reconvertit en tension, et à partir de cela détermine la valeur réelle des données.

Ou, vous pouvez simplement utiliser un microcontrôleur et consommer moins de temps, d'argent, d'énergie et d'espace.


13
lol ............
Long Pham

17
L'autre option rétro est un enregistreur papier analogique: google.com/search?q=analog+paper+recorder
W5VO

21
@ W5VO: Et ensuite, vous pouvez implémenter un système de vision industrielle pour obtenir les données à terme sur votre PC.
Olin Lathrop

2
Je n'ai pas dit que c'était une bonne solution, mais je pensais que c'était quelque part entre un magnétophone et des tablettes d'argile
W5VO

1
J'avais l'habitude d'enregistrer 10 heures de mp3 stéréo de haute qualité sur mon magnétoscope Beta à la vitesse la plus lente.
Tony Stewart Sunnyskyguy EE75

36

Non, vous ne pouvez pas stocker une valeur analogique telle quelle sur un support de stockage numérique comme une eeprom ou une carte SD.

Vous pouvez effectuer une conversion analogique-numérique (en utilisant une puce appropriée) pour convertir votre analogique en numérique. Pour l'étape suivante, l'écriture sur une carte SD nécessite pratiquement un processeur. Si vous ne voulez vraiment pas utiliser un MCU, vous finirez par en concevoir et en construire un vous-même à partir de blocs de construction plus simples. C'est un projet éducatif intéressant, environ 0,5 année-homme pour un étudiant qui est bon en programmation et en électronique.

Une EEPROM sera un peu plus facile à écrire les valeurs, mais la lecture des valeurs sur votre PC serait plus compliquée. Dans l'ensemble, ce serait toujours beaucoup plus facile que le bricolage MCU, mais tout de même un projet.

Lorsque vous regardez autour de vous, tout le monde utilise des MCU pour presque tous les projets, y compris l'enregistrement de données comme vous le souhaitez. Devine pourquoi!


4
Le dernier paragraphe avec sa question est un joyau qui vaut bien le +1.
Michael Karas

18
Mais vous avez ignoré tous les médias analogiques passionnants comme les cylindres de cire et les lignes à retard au mercure!
BeB00

6
Que diriez-vous d'une matrice de RAM à double port cadencée d'un côté avec la logique série 74 d'un ADC et de l'autre côté ... un FTDI compte-t-il comme un processeur? Oh et une batterie ... Personne n'a rien dit sur le fait de ne pas vouloir une planche très dense, n'est-ce pas?
Asmyldof

1
@ BeB00 IMO Eugene Sh. parcouru très bien cette route avec son multimètre + bloc-notes (la version papier, je présume) suggestion!
Wouter van Ooijen

@WoutervanOoijen n'est pas un bloc-notes un support numérique? Je suis relativement sûr que la position est au moins partiellement numérisée par le photorécepteur avant d'être transmise à un microcontrôleur humide.
Maciej Piechotka

16

Ce que vous essayez de faire ressemble à la journalisation.

Il existe de nombreux enregistreurs de données vendus dans le commerce. Si vous voulez enregistrer les lectures de tension, vous pouvez essayer de googler "voltage logger". Ces appareils écrivent un fichier journal sur un périphérique de stockage (carte SD, clé USB, etc.) à partir des relevés du capteur.

Techniquement, cela utilise un MCU en interne. Mais vous ne voyez jamais le MCU, vous n'avez jamais à développer de logiciel pour le MCU et vous ne touchez jamais le MCU.


@immibis Vous ne le feriez pas ... Google renvoie utilement " Affichage des résultats pour l'enregistreur de tension | Recherchez plutôt l'enregistreur de vlotage " pour que les résultats soient les mêmes!
TripeHound

10

La réponse dépend de votre définition de "directement".

Je pourrais imaginer la configuration suivante (loin d'être "directe", mais sans MCU):

Mémoire cible:

  1. EEPROM parallèle
  2. ADC avec une sortie parallèle (par exemple) 8 bits
  3. Un ensemble de registres pour faire un compteur
  4. Puce de synchronisation (par exemple NE555)
  5. Une autre EEPROM qui serait programmée avec une machine d'état + quelques portes qui feraient essentiellement avancer le compteur et émettraient des commandes d'écriture des données ADC parallèles vers l'EEPROM.

Alternativement, l'ensemble de la configuration ci-dessus pourrait être implémenté dans un CPLD ou FPGA, pas un MCU.

Vous pouvez également utiliser un contrôleur Motorola MC14500B , qui n'est pas un MCU.

En pratique, aujourd'hui, l'option la moins chère, la plus petite, la plus rapide et la plus fiable est un microcontrôleur.


9
Cela vaut probablement la peine d'être ajouté: et une fois que vous avez construit cette EEPROM / registre / machine d'état, vous venez de construire votre propre MCU.
duskwuff -inactive-

2
J'imagine que cette solution (bien que plus complexe) serait plus fiable qu'un MCU. Surtout si vous avez besoin d'un ADC précis, ou pour garantir des échantillons réguliers.
Michael Molter

10
@MichaelMolter: Je ne peux pas imaginer les horreurs que vous avez vues pour vous faire dire ça ...
Ignacio Vazquez-Abrams

Le problème d'accélérateur coincé de Toyota a été attribué au débordement de la pile MCU à un moment donné. Je dirais que c'est une implémentation tout aussi simple qui a subi des tests rigoureux et a échoué de manière catastrophique d'une manière que peu prédisent. Pas de MCU, pas de problèmes, non? httpsw.edn.com/design/automotive/4423428/Toyota-s-killer-firmware--Bad-design-and-its-consequences
Michael Molter

1
@duskwuff - la machine à états n'atteindrait pas nécessairement la complexité où vous la compareriez avec un microcontrôleur générique. Par exemple, il n'aurait probablement pas besoin de prendre en charge la ramification ... vous pourriez probablement vous en tirer avec un compteur réinitialisable pour l'état actuel plutôt qu'un registre qui doit être mis à jour à une valeur spécifiée à chaque horloge.
Jules

5

Puisque vous envisagez d'utiliser un ordinateur pour «convertir les tensions en pression», vous devez utiliser le format de données compréhensible par les ordinateurs - qui est un format numérique. Par conséquent, quelque chose doit d'abord convertir la sortie analogique de vos capteurs sous forme numérique, «numériser» la tension. Il doit donc y avoir un convertisseur analogique-numérique entre les deux. La conversion de la tension numérisée en lectures de pression (en utilisant peut-être des tableaux ou des formules de conversion si la conversion est non linéaire) est une bonne tâche pour votre PC.

Techniquement, vous n'avez pas besoin d'un MCU pour effectuer cette conversion, un FPGA dédié avec des algorithmes câblés peut contrôler tous les échantillonnages de données et les communications. Mais le MCU est plus pratique, surtout s'il a déjà un ADC intégré.

Et vous n'avez pas besoin de passer votre temps à construire un convertisseur MCU +, il existe des appareils appelés «systèmes d'acquisition de données» (DAS) ou «enregistreurs de données» qui le feront pour vous, échantillonner / convertir des données analogiques et les communiquer via une interface pratique comme USB (ou RS232). Certains multimètres numériques ont cette capacité d'acquisition de données, ou vous pouvez obtenir un DAS dédié dans des endroits comme DATAQ.com. Le DAS serait livré avec tous les logiciels d'enregistrement de données nécessaires, et vous pouvez stocker les données comme vous le souhaitez, SD ou autre. Naturellement, la conversion de votre capteur en données de pression utilisables vous coûtera de l'argent, rien n'est gratuit.


3

Oui, vous pouvez ... en quelque sorte. Recherchez des puces ISD , conçues pour des applications simples et bon marché, où vous devez enregistrer et rejouer des signaux analogiques. Utilisé dans les jouets parlants, les cartes postales musicales et similaires. Je doute cependant qu'ils soient suffisamment précis pour votre objectif.

http://www.nuvoton.com/hq/products/isd-voice-ics/isd-chipcorder-family/?__locale=en


+1 Oui, ils existent et (au moins certaines formes) sont une interprétation littérale de l'objectif de la question. Cependant, pratiquement, les MCU sont très bon marché et permettent des choses comme la personnalisation du processus d'enregistrement et de lecture.
Chris Stratton

3

Étant donné que votre seule exigence n'est pas d'utiliser uC, vous pouvez utiliser un pont USB-SPI pour interfacer un ADC SPI avec un PC.

C'est la solution la moins chère si vous ne souhaitez pas utiliser uC.

Ou vous pouvez financer $$$ pour des instituts, des centres de recherche, ... afin qu'ils puissent accélérer la recherche de mémoire analogique, ce dont vous avez besoin en ce moment.


1
Ils ont une mémoire analogique, appelée appareil de la brigade à godets depuis de nombreuses années. C'est ainsi que fonctionne un CCD.
user71659

@ user71659 Cet appareil est uniquement destiné à retarder le signal analogique, pas à le stocker pendant des périodes prolongées.
Long Pham

-1

Enregistreur de données de tension 0 ~ 32V L'USB-503 stocke les mesures 32k
avec des intervalles de 1 s à 12 h.
Se stocke sur un dongle USB avec batterie incluse. Exportation facile vers Excel. Inc Software sur www.mccdaq.com

Pas cher.

C'est seulement 2,1 millions de rials

ehm .. faire que 2,2 m et en hausse

entrez la description de l'image ici


1
Identique à la réponse de cybernard. S'il y a un microcontrôleur (et je parie que ma chemise en est une), cela ne répond pas à la question.
dim perdu confiance en SE

Le critère d'acceptation était de gagner du temps, de l'argent et de l'espace, et non d'être vide de logique. Je regarde d'un mauvais œil les ingénieurs qui ne trouvent pas de solutions et j'admire ceux qui les résolvent avec peu d'effort.
Tony Stewart Sunnyskyguy EE75

3
Je ne suis pas sûr de l'avoir compris. De quel ingénieur parlez-vous? Moi? Les gens que j'admire ne sont pas sur Internet. Ils sont dans des livres. Sur Internet, j'essaie simplement de respecter les gens, et c'est déjà assez difficile. Vous pouvez avoir n'importe quelle vue de moi, cela n'a aucune pertinence. Le problème est que, quels que soient les critères d'acceptation, il y avait une question dans le message d'origine, et votre réponse aborde autre chose.
dim perdu confiance en SE

1
@dim, vous semblez ne pas savoir que la sauvegarde à distance des données peut être coûteuse (temps, argent et espace). !! qui peut ne pas correspondre au budget de quelqu'un. Vous ne pouvez pas ignorer qu'une solution à 49 $ est une «évidence» qui est le résultat de l'évolution récente de la conception. Je vous suggère donc de commencer à dépasser les fondamentaux et à en apprendre davantage sur le Web et les épaules de géants avec beaucoup plus d'expérience que les livres. C'est un processus d'apprentissage quotidien. Bien que l'humour soit bon aussi.
Tony Stewart Sunnyskyguy EE75

2
Tu te trompes. Je ne dis pas si votre idée est bonne ou mauvaise (elle est probablement bonne). Je suis à un tout autre niveau: publiez-vous des réponses à la question? Regardez ... Si la question est "Pouvez-vous faire un tableau sans pinceau?", La réponse "J'utiliserais un pinceau n ° 5" ne répond pas à la question. Qu'un pinceau n ° 5 soit une bonne idée ou non, ou que l'on puisse réaliser un tableau sans pinceau ou pas. C'est, au mieux, un commentaire intéressant, ou une partie d'une réponse. Une vraie réponse, par exemple, serait: "Peindre sans pinceau est difficile, car cela. Au fait, j'utiliserais un pinceau n ° 5."
dim perdu confiance en SE
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.