Spara det analoga värdet.Går detta att lösa?

C, C++, Pascal, Assembly, Raspberry, Java, Matlab, Python, BASIC, SQL, PHP, etc.
Bluub
Inlägg: 2
Blev medlem: 30 december 2018, 11:39:35

Spara det analoga värdet.Går detta att lösa?

Inlägg av Bluub »

Hej hej!
Jag är absolut helt ny på det här med arduino.
Jag stötte nydligen på det här systemet och tyckte direkt att det va intressant.

Min fundering jag fick när jag ser vilka möjligheter arduiono ger är.
Om jag använder mig av en dragviregivare för att indikera höjden på en maskin som rör sig upp och ner.
Med den analoga signalen som arduinon får ut av givaren. Det vill jag spara med ett knapp tryck. En slutade sådan. Säg att maskinen är i mitten av sin rörelser. Maskinen har jag stannat manuellt i mitten. Nu vill jag trycka på min knapp för att komma ihog det analoga värdet som jag har när maskinen står i mitten.
Mitten var bara ett exempel. Jag vill kunna spars vilken höjd som under hela rörelsen.
Med det sparade värdet vill jag sen att arduino skall sluta en utgång varje gång maskinen passerar den sparade höjder/värdet.
Någon erfaren som tycker att detta är möjligt att göra?
Tacksam för svar :)
Användarvisningsbild
Lennart Aspenryd
Tidigare Lasp
Inlägg: 12607
Blev medlem: 1 juli 2011, 19:09:09
Ort: Helsingborg

Re: Spara det analoga värdet.Går detta att lösa?

Inlägg av Lennart Aspenryd »

Hej och välkommen till forumet!

Visst är det möjligt att spara värden, om de är analoga eller digitala har ju ingen betydelse.
Skriv gärna ner ett tänkt flöde, vad händer i de olika faserna som du vill hålla reda på.

Det kallas Pseudokod där man man i vanligt språk skriver ner ett scenario.

Så kanske någon triggar på din input med förslag på lösning.
Användarvisningsbild
Icecap
Inlägg: 26139
Blev medlem: 10 januari 2005, 14:52:15
Ort: Aabenraa, Danmark

Re: Spara det analoga värdet.Går detta att lösa?

Inlägg av Icecap »

Man kan som så inte spara ett analogt värde! Med µC (microcontroller, typ Arduino och MÅNGA andra) kan man bara spara digitala värden - men analoga värden kan omvandlas. Dock får man definiera exakt hur man får värdet in och vilken dynamik man behöver.

Specifikationer är A & O i alla projekt.

Men det du beskriver kan ganska enkelt uppnås - men vilket signal får man ifrån dragwiregivaren?
Användarvisningsbild
HUGGBÄVERN
Tidigare soundbrigade
Inlägg: 32735
Blev medlem: 23 augusti 2006, 22:44:11
Ort: Lilla Paris
Kontakt:

Re: Spara det analoga värdet.Går detta att lösa?

Inlägg av HUGGBÄVERN »

Och när du vill komma igång och programmera, börja med enkla övningar. Ersätt din givare med en potentiometer och sätt en tryckknapp på en annan ingång och en lysdiod på en utgång och labba.
Jag ska inte säga att det är enklare än du tror men om du börjar med små steg, och som LASP och Istoppen skrivit - speca så noggrant du kan.
Bluub
Inlägg: 2
Blev medlem: 30 december 2018, 11:39:35

Re: Spara det analoga värdet.Går detta att lösa?

Inlägg av Bluub »

Hej!

Tack för svar.

Icecap jag kan välja på 4-20mA, 0-10v och 1k ohm.
Det är inga komponenter som är inhandlade ännu.

Kul att veta att det går att lösa.
Jag får helt enkelt skaffa mig ett kit och labba med.
Plc är jag van vid. Men nu är det programmering som man inte är van vid. :)
Användarvisningsbild
Icecap
Inlägg: 26139
Blev medlem: 10 januari 2005, 14:52:15
Ort: Aabenraa, Danmark

Re: Spara det analoga värdet.Går detta att lösa?

Inlägg av Icecap »

OK, det är analoga givare. Det betyder att du måste använda A/D-omvandlaren som har vissa begränsningar.
Om jag inte minns fel har Arduino en 10 bit A/D-omvandlare vilket betyder att den kan skilja 1024 positioner ifrån varandra. Om detta räcker för dig kan bara du avgöra.

Och verkligheten är att 1024 är det maximala antal, verkligheten beror på brus, störningar och hur bra det analoga kretslopp är gjort och avkopplat.

Om dragwiregivaren hade varit digital, alltså givit pulser istället, kan man i grunden ha vilken upplösning som helst - men man måste samtidig ha en brytare som ger en "noll-referens" så att det finns ett "noll"-punkt som aktiveras. Detta för att systemet vid uppstart räknar "blint" men med aktivering av "noll"-brytaren kan systemet plötsligt veta varifrån det räknar.
Användarvisningsbild
hawkan
Inlägg: 2619
Blev medlem: 14 augusti 2011, 10:27:40

Re: Spara det analoga värdet.Går detta att lösa?

Inlägg av hawkan »

Det är iofs riktigt att det bara finns ett visst antal input från AD-konverteraren.

Men om man verkligen vill läsa och skriva en float till EPROM så finns det utmärkta exempel
i https://www.arduino.cc/en/Reference/EEPROMPut och https://www.arduino.cc/en/Reference/EEPROMGet.

Egentligen bara att använda.
Användarvisningsbild
Bosen
Inlägg: 1753
Blev medlem: 18 juli 2005, 10:56:31
Ort: Karl Gustav, Varberg
Kontakt:

Re: Spara det analoga värdet.Går detta att lösa?

Inlägg av Bosen »

Hur läser du idag av ditt analoga värde?
Jag antar att du använder AnalogRead(Pin).
För att spara ditt värde så skriver du SavedValue=AnalogRead(Pin).
Nu är ditt värde sparat i variabeln SavedValue. Om du startar om din arduino kommer värdet att försvinna, och för att lösa det så måste du skriva det till EEPROM, men om du inte har tänkt att starta om din arduino så har du hela tiden ditt värde där.
Skriv svar