Sida 1 av 26

Försöker lära mej Arduino

InläggPostat: 23:52:33, 06-12-2018
av AN
Blir inspirerad av alla projekt som innehåller Arduino.
Köpte mej ett Arduino kort och en bok 2012 tror jag det var. Började greja lite, med betoning på lite. Andra intressen kom i vägen. Kollat lite några gånger under åren, och suget får sej ju en topp när man ser att nån byggt något kul. Som Janssons TDI och M Göranssons alster.
Men nu provar jag en gång till att komma igen.
Läste Kjell och Companys bok för ungeför ett år sedan, bara sträckläste utan att programmera.
Men har hittat en kurs som jag tycker är bra, på youtube, och börjat följa och även göra samma exempel.

Men nu har jag en fråga ang ett avsnitt i den serien.
https://www.youtube.com/watch?v=_H16GYL08Ik

Man kopplar in en pot på 5v, GND och A0. Övningen går ut på att man ska läsa Spänningen i klartext, i serial monitor.
Han använder en Float funktion, där man delar 5v med 1023, så att varje bit(heter det så) motsvarar en spänning.
Sen läser man mellan 0 och 5v i serial monitor beroende på hur man skruvar på poten.
Inga problem än så länge. Men på slutet får man en uppgift, att se vad värdena blir om man flyttar från 5v uttaget till 3,3v.
Då läser man i serial monitorn, mellan och 3,3v utan att ändra koden?
Är inte riktigt med på varför det fungerar utan att ändra koden? Går det att förklara på ett enkelt sätt :smile:
Sen frågar han vilken konverteringsfaktor man ska använda om man vill läsa 0-100, isf 0-5v. Hur tänker man då? Jag testade mej fram, men måste vara ett annat sätt han menar?

Re: Försöker lära mej Arduino

InläggPostat: 23:58:45, 06-12-2018
av Towil
Det är bara insignalen som ärdras. Är det 3,3 V så är det det. Så det är som att köra på 5V och vrida poten så att den visar 3,3V
Det är den externa spänningsdelaren du har ändrat.
ADC har en intern referns som den jämför emot. Den är konstant

Re: Försöker lära mej Arduino

InläggPostat: 00:05:32, 07-12-2018
av Ulf
Om du tänkrr efter lite så vet du svaret!
Om du har ändarna på potten kopplad mellan 0 och 5 volt, kan du få spänningen till A0 att variera mellan just 0 och 5 volt.

Är potten mellan 0 och 3,3 volt så kommer spänningen variera mellan 0 och 3,3 volt. Du har ju inte ändrat referensspänningen Aref, utan den är fortfarande 5volt. Ändrar du Aref till 3,3volt så kommer den inte att visa rätt. För att den då ska visa rätt måste du ha en annan omräkningsfaktor.

Hoppas det blev klarare...

Re: Försöker lära mej Arduino

InläggPostat: 01:45:23, 07-12-2018
av sm6ywk
ADC (analog-digital-converter) i en arduino arbetar genom att jämföra en spänning med en annan. I ditt fall den som är på A0 mot AREF.
AREF bör gå att ställa om mellan några olika källor, en är en intern 1,1V som arduino själv skapar, men i din övning har du nog använt matningsspänningen som referens.
ADCn har en upplösning på 10 bitar, det är samma sak som 1024 steg (0-1023), varje gång du läser det analoga värdet på A0 så kommer svaret bli i dessa 1024 steg där 0 V ger noll steg och 5 V ger 1023 steg. Genom att dela med 1023 så kommer du istället att få ett decimaltal som går mellan 0-1. 0 V ger 0 steg som delat med 1023 blir noll, 5 V ger 1023 steg som delat med 1023 blir ett. Vill du istället ha värdet i volt kan du enkelt multiplicera med referensspänningen och får då ett värde mellan 0 och AREF (i detta fallet 5 V). Om du flyttar potentiometern till att spänningsdela mellan 3,3 V och gnd så kommer fortfarande spänningen som är på A0 att visas, dvs mellan 0 - 3,3.
Genom att multiplicera med 100 istället för 5 kommer värdena röra sig mellan 0-100, man skulle kunna se det som procent av matningsspänningen.
Gick det att förstå?

Re: Försöker lära mej Arduino

InläggPostat: 12:14:22, 08-12-2018
av AN
Tack för era utförliga svar. :grin:
Så grejen är att jag hade samma referensspänning i båda fallen? Aref=5v?
Jag trodde nog att det blev 3,3v som referens.
Aref=5v är default på Arduino?

Re: Försöker lära mej Arduino

InläggPostat: 13:43:10, 08-12-2018
av Towil
Default är Vcc så det beror på matarspänningen.

Man kan ändra om mna vill
https://www.arduino.cc/reference/en/lan ... reference/

Re: Försöker lära mej Arduino

InläggPostat: 18:20:50, 08-12-2018
av AN
Sett lite på pwm nu. Det är standard att pwm går mellan 0-255, i alla, eller nästan alla system?
Om man kör duty cycle 50%, från 5V, så upplever tex en likströmsmotor att den matas med 2,5V. Är det så enkelt?
Om tex en elmotor får matas med max 2,5v för att inte bränna, då är det väl inte säkert att köra den på 5v, 50% duty cycle?
Även om den klarar effekten, kan väl spänningstopparna ställa till det. Dåligt exempel, men ni förstår ungefär hur jag menar. Kanske :grin:

Re: Försöker lära mej Arduino

InläggPostat: 21:33:22, 08-12-2018
av Towil
Bild
Här en PWM på 5V, 50 % duty. Och 488Hz som Arduino kör med.

Bild
Kollar man på en voltmeter ser man 2,5V DC men RMS värdet är 3,5V.
Effekt som avges i ett motstånd så är det 3,5V du skall gå på.

Bild
Om man nu kopplar in ett lågpassfilter mellan så kommer man nu att jämna ut vågformen.

Bild
Så här ser det ut efter lågpassfiltret. Nu är RMS och medelvärdet samma.

När det kommer till hur mycket max spänning en komponent tål får man läsa datablad.
Så klarar inte komponenten 100% PWM så får man nog var extra försiktig.

Nej, det är inte alltid PWM går mellan 0-255.

Re: Försöker lära mej Arduino

InläggPostat: 21:45:07, 08-12-2018
av kimmen
:uupps:

Re: Försöker lära mej Arduino

InläggPostat: 22:08:09, 08-12-2018
av Towil
kimmen skrev: :uupps:

Var det RMS som krånglade till det?
Tänk på att effekt P = U*I så den övre delen ger mer tillskott än den undre.

Tänk så här att man har ett motstånd på 1 ohm och en spänning på 2,5V. Effekt över moståndet blir då 2,5 * 2,5 =6,25W
Höjer vi nu spänningen till 5V blir effekten 5*5 = 25W. Så dublerad spänning ger mer än dubblerad effekt.

Re: Försöker lära mej Arduino

InläggPostat: 22:46:36, 09-12-2018
av Hansborg
Ursäkta intrång, jag e också inspirerad av detta ämne...
Startar en egen tråd om jag får till det..

En sådan här text dyker upp, när jag startar arduinon.
Installertat om arduinon utan framgång i saken...

Bild

Nå liknande text kommer även upp i svarta listen..

Re: Försöker lära mej Arduino

InläggPostat: 23:04:58, 09-12-2018
av Ulf
mac, windows eller Linux?

Re: Försöker lära mej Arduino

InläggPostat: 23:16:38, 09-12-2018
av Towil
Kanske inte gillar mellanslag i katalognamn.

Re: Försöker lära mej Arduino

InläggPostat: 23:26:47, 09-12-2018
av AN
Tack Towil. :smile:

Var är bilderna från?
Mätinstrument kopplat till laptop, eller ett instrument riktig skärm som du kan ta skärmdumpar från?

Re: Försöker lära mej Arduino

InläggPostat: 23:34:20, 09-12-2018
av Towil
USB anslutning på instrumenteten så att man kan spara en skärmdump. Går via lan med men är enkalare att tryck på en knapp och det sparas på USB minnet.


Bild
USB minne svart nere till vänster. Print screen knapp orange uppe till höger.