11
\$\begingroup\$

Is there a way to save voltage data directly (without a microcontroller) to anywhere, like EEPROM, SDCARD, etc.?

For example, I am using an MPX pressure sensor which gives 0V to 5V analog output. Instead of converting voltages to pressure in a microcontroller and saving (which takes time, money, space, etc...), first, I want to save analog data, then taking these data to my computer for the conversion of voltages to pressure.

\$\endgroup\$
5
  • 29
    \$\begingroup\$ You can sit with multimeter and write it down with a pen and paper. Or use the appropriate instrumentation, which is eventually containing some kind of MCU \$\endgroup\$
    – Eugene Sh.
    Commented Jul 19, 2018 at 15:39
  • 8
    \$\begingroup\$ Any analogue solution you might dream up costs more than the 2c for a uc \$\endgroup\$
    – PlasmaHH
    Commented Jul 19, 2018 at 15:45
  • 18
    \$\begingroup\$ I would just mention that the SD card itself contains also a mcu to provide the bus/store/read data etc \$\endgroup\$
    – magu_
    Commented Jul 19, 2018 at 20:41
  • 1
    \$\begingroup\$ Does a chart recorder count? \$\endgroup\$ Commented Jul 20, 2018 at 9:47
  • 7
    \$\begingroup\$ Magnetic tape? :) \$\endgroup\$
    – Jules
    Commented Jul 20, 2018 at 9:49

8 Answers 8

74
\$\begingroup\$

You can't use a EEPROM or any other storage means that is digital without first converting your signal to digital. Using a microcontroller is the obvious and simple way to do that.

However, if you really want to satisfy your inner cave man, acquire one of these:

This stores analog data from a few 10s of Hz to a few kHz. You'll have to consult some clay tablets to learn how to use it.

One problem you will have is that the frequency of interest is probably lower than what it can record. The solution is to have your signal drive a voltage-variable oscillator, then record the output of that oscillator. In other words, FM-modulate your low-frequency signal.

There are ICs that implement the voltage-controlled oscillator function, but that would way too sensible and clash with your retro goal. Get a few of these:

and make your own.

After the data has been stored, you "rewind" (see clay tablets) the storage medium. Then "play" it into a PC sound card. The PC finds the frequency of the signal, from that converts back to the voltage, and from that determines the actual data value.

Or, you could just use a microcontroller and consume less time, money, power and space.

\$\endgroup\$
6
  • 13
    \$\begingroup\$ lol............ \$\endgroup\$
    – Long Pham
    Commented Jul 19, 2018 at 17:54
  • 17
    \$\begingroup\$ The other retro option is an analog paper recorder: google.com/search?q=analog+paper+recorder \$\endgroup\$
    – W5VO
    Commented Jul 19, 2018 at 18:58
  • 21
    \$\begingroup\$ @W5VO: And then you get to implement a machine vision system to get the data eventually into your PC. \$\endgroup\$ Commented Jul 19, 2018 at 22:07
  • 2
    \$\begingroup\$ I didn't say it was a good solution, but I figured it was somewhere between a tape recorder and clay tablets \$\endgroup\$
    – W5VO
    Commented Jul 19, 2018 at 22:43
  • 1
    \$\begingroup\$ I used to record 10 hours of high quality stereo mp3 on my Beta VCR on slowest speed. \$\endgroup\$
    – D.A.S.
    Commented Jul 20, 2018 at 21:24
37
\$\begingroup\$

No, you can't store an analog value as-is on a digital storage medium like an eeprom or an SD card.

You could do an analog-to-digital conversion (using an appropriate chip) to convert your analog to digital. For the next step, writing to an SD-card practically requires a processor. If you really don't want to use an MCU you would end up designing and building one yourself from simpler building blocks. That is an interesting educational project, about 0.5 man-year for a student who is good in both programming and electronics.

An EEPROM will be a bit easier to write the values, but reading the values to your PC would be more complicated. In the balance it would still be much easier than the DIY MCU, but still quite a project.

When you look around you everyone uses MCU's for almost all projects, including data logging like you want. Guess why!

\$\endgroup\$
6
  • 4
    \$\begingroup\$ Last paragraph with it's question is a gem well worth the +1. \$\endgroup\$ Commented Jul 19, 2018 at 15:54
  • 18
    \$\begingroup\$ But you skipped over all the exciting analog media like wax cylinders and mercury delay lines! \$\endgroup\$
    – BeB00
    Commented Jul 19, 2018 at 16:22
  • 6
    \$\begingroup\$ How about a dual-port RAM array clocked on one side with 74-series logic from an ADC and on the other side... does an FTDI count as a processor? Oh and a battery... Nobody said anything about not wanting a highly dense board, did they? \$\endgroup\$
    – Asmyldof
    Commented Jul 19, 2018 at 16:54
  • 1
    \$\begingroup\$ @BeB00 IMO Eugene Sh. covered that route very well with his multimeter + notepad (the paper version, I presume) suggestion! \$\endgroup\$ Commented Jul 19, 2018 at 17:28
  • \$\begingroup\$ @WoutervanOoijen isn't notepad a digital medium? I'm relatively sure position is at least partially digitized by the photoreceptor before being passed to a wet MCU. \$\endgroup\$ Commented Jul 20, 2018 at 2:09
16
\$\begingroup\$

What you are trying to do sounds like logging.

There are lots of data loggers out there sold commercially. If you want to log voltage readings you can try googling "voltage logger". Such devices write a log file to a storage device (sd card, thumb drive etc.) from sensor readings.

Technically this uses an MCU internally. But you never see the MCU, you never have to develop software for the MCU and you never touch the MCU.

\$\endgroup\$
1
  • \$\begingroup\$ @immibis You wouldn't... Google helpfully returns "Showing results for voltage logger | Search instead for vlotage logger" so the results would be the same! \$\endgroup\$
    – TripeHound
    Commented Jul 23, 2018 at 9:31
10
\$\begingroup\$

The answer depends on your definition of "directly".

I could imagine the following setup (far from "direct", but without an MCU):

Target memory:

  1. parallel EEPROM
  2. ADC with an (eg.) 8-bit parallel output
  3. A set of registers to make a counter
  4. Timing chip (eg. NE555)
  5. Another EEPROM that would be programmed with a state machine + some gates that would basically advance the counter and issue write commands of the parallel ADC data to the EEPROM.

Alternatively the whole setup above could be implemented in an CPLD or FPGA, not an MCU.

You could also use a Motorola MC14500B controller, which is not an MCU.

In practice, today, the cheapest, smallest, fastest and most reliable option is an MCU.

\$\endgroup\$
8
  • 9
    \$\begingroup\$ Probably worth adding: and once you've built that EEPROM/register/state-machine, you've basically just built your own MCU. \$\endgroup\$
    – user39382
    Commented Jul 19, 2018 at 17:40
  • 2
    \$\begingroup\$ I would imagine this solution (though more complex) would be more reliable than an MCU. Especially, if you needed a precise ADC, or to guarantee regular samples. \$\endgroup\$ Commented Jul 19, 2018 at 20:04
  • 10
    \$\begingroup\$ @MichaelMolter: I can't imagine the horrors you've seen to make you say that... \$\endgroup\$ Commented Jul 20, 2018 at 1:30
  • \$\begingroup\$ Toyota's stuck accelerator problem was blamed on MCU stack overflow at one point. I would argue that's a similarly simple implementation that underwent rigorous testing and still failed catastrophically in a way few would predict. No MCU, no problems, right? httpsw.edn.com/design/automotive/4423428/Toyota-s-killer-firmware--Bad-design-and-its-consequences \$\endgroup\$ Commented Jul 20, 2018 at 1:37
  • 1
    \$\begingroup\$ @duskwuff - the state machine wouldn't necessarily reach the complexity where you'd compare it with a generic microcontroller. For example, it probably wouldn't need to support branching ... you could probably get by with a resettable counter for the current state rather than a register that needs updating to a specified value on every clock. \$\endgroup\$
    – Jules
    Commented Jul 20, 2018 at 9:56
5
\$\begingroup\$

Since you consider using a computer to "convert voltages into pressure", you need to use the data format that is understandable by computers - which is a digital format. Therefore something must convert the analog output of your sensors into digital form first, "digitize" the voltage. Thus there must be an Analog-to-Digital Converter in between. Converting the digitized voltage into pressure readings (using maybe some tables or conversion formulas if the conversion is nonlinear) is a good task for your PC.

Technically you don't need a MCU to perform this conversion, a dedicated FPGA with hardwired algorithms can control all data sampling and communications. But MCU is more convenient, especially if it already has an ADC built in.

And you don't need to spend your time on building MCU+converter, there are devices called "data acquisition systems" (DAS), or "data loggers" that will do it for you, sample/convert analog data, and communicate them via convenient interface as USB (or RS232). Some DMMs have this data acquisition capability, or you can get a dedicated DAS from places like DATAQ.com. The DAS would come with all necessary data logging software, and you can store the data anyway you wish, SD, or else. Understandably the conversion from your sensor to usable pressure data will cost you some money, nothing comes for free.

\$\endgroup\$
3
\$\begingroup\$

Yes, you can... sort of. Look for ISD chips, designed for dead simple and cheap applications, where you need to record and replay analog signals. Used in talking toys, musical postcards, and the like. I doubt they are accurate enough for your purpose, though.

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

\$\endgroup\$
1
  • \$\begingroup\$ +1 Yes, these exist and (at least some forms) are a literal interpretation of the question's goal. However, practically speaking, MCUs are dirt cheap and allow for things like customizing the recording and playback process. \$\endgroup\$ Commented Jul 21, 2018 at 16:47
3
\$\begingroup\$

Since your only requirement is not using uC, you can use USB-SPI bridge to interface a SPI ADC with PC.

That's the cheapest solution if you don't want to use uC.

Or your can fund $$$ for institutes, research centers,... so they can speed up the research of analog memory, the thing you need right now.

\$\endgroup\$
2
  • 1
    \$\begingroup\$ They've had analog memory, called a bucket-brigade device for many years. It's how a CCD works. \$\endgroup\$
    – user71659
    Commented Jul 21, 2018 at 0:31
  • \$\begingroup\$ @user71659 That device is only intended for delaying analog signal, not for storing it for extended periods. \$\endgroup\$
    – Long Pham
    Commented Jul 21, 2018 at 14:40
-1
\$\begingroup\$

0~32V voltage data logger USB-503 stores 32k measurements
with intervals from 1 s to 12 h.
Stores on USB dongle with battery enclosed. Easy export to Excel. Inc Software at www.mccdaq.com

Cheap.

It's only 2.1 million Rials

ehm.. make that 2.2m and rising

enter image description here

\$\endgroup\$
8
  • 1
    \$\begingroup\$ Same as cybernard's answer. If there is a microcontroller in it (and I bet my shirt there is one), it doesn't answer the question. \$\endgroup\$
    – dim
    Commented Jul 20, 2018 at 21:27
  • \$\begingroup\$ The acceptance criteria was to save time, money and space, not be void of logic. I take a dim view of engineers who dont find solutions and admire those that solve them with little effort. \$\endgroup\$
    – D.A.S.
    Commented Jul 20, 2018 at 21:51
  • 3
    \$\begingroup\$ Not sure I get it. Who is this engineer you are talking about? Me? The people I admire are not on the Internet. They are in books. On the Internet, I simply try to respect people, and it is already hard enough. You can take whatever view of me, this has no relevance. The thing is, whatever you think the acceptance criteria is, there was a question in the original post, and your answer addresses something else. \$\endgroup\$
    – dim
    Commented Jul 21, 2018 at 6:47
  • 1
    \$\begingroup\$ @dim you seem to lack the insight that remote saving of data can be expensive (time, money and space) Academic solutions in books are essential but practical solutions such as a suggested “data logger” typically costs 300-500$ minimum or $k !! which may not fit someone’s budget. You cannot ignore that a $49 solution is a “no-brainer” that is a result of recent evolution in design. So I suggest you begin to move past fundamentals and learn more from the web and the shoulders of giants with far more experience than books. It is a daily learning process. Although the humour is good too. \$\endgroup\$
    – D.A.S.
    Commented Jul 21, 2018 at 16:47
  • 2
    \$\begingroup\$ You are mistaken. I'm not arguing whether your idea is good or bad (it is probably good). I am on a whole different level: does you post answers the question? Look... If the question is "Can you make a painting without a brush?", the answer "I would use a brush n°5" does not answer the question. Whether a brush n°5 is a good idea or not, or whether you can actually make a painting without a brush or not. It is, at best, an interesting comment, or a part of an answer. A real answer, for example, would be: "Painting without a brush is hard, because this. By the way, I would use a brush n°5." \$\endgroup\$
    – dim
    Commented Jul 21, 2018 at 18:16

Not the answer you're looking for? Browse other questions tagged or ask your own question.