Show Posts
Pages: 1 [2] 3 4
16  International / Scandinavia / Analog pin --> Digital on: November 02, 2012, 04:42:28 am
Hej

Jag är behov av att utnyttja mina anloga pinnar och behöver convertera dessa till digitala. Nu vet jag att analoga är till för att läsa av sensorer eller värden av t.ex. en potentiometer. Dessa fungerar utmärkt som digitala också med internt motstånd aktiverat.

Har försökt att göra detta med kod:
int VC21L3 = A0;

innanför void setup har jag koden:
pinMode(A0, INPUT);
digitalWrite(A0, HIGH);

Men i void loop har jag bara:
if (digitalRead(VC21L3) == HIGH){Serial.print("0");} else{Serial.print("Cconsole-Auto_Brake-1");}
_______________________________________________________________________________________________________

Jag känner på mig att det fattas något eller är fel i koden men vad?

Mvh Fredrik
17  International / Scandinavia / Re: Rotary encorders till B737 panel on: October 30, 2012, 05:31:56 pm
Hej

Jag har hittat rotary switch till ett bra pris på Ebay smiley

Dessa kommer att fungera som jag har tänkt och koden är som vilken switch som helst, istället för att vippa så vrider man på dessa!

Tack för hjälpen med det smiley

Mvh Fredrik
18  International / Scandinavia / Re: Rotary encorders till B737 panel on: October 30, 2012, 02:25:11 pm
Hej

Jag ska nog leta efter rotary switch, visste inte att sådana finns men det finns funktioner där en rotary encorder passar t.ex. där man vrider på saker typ en mätare där man vill ta fram siffror, lik en volym ratt!

Har du något bra tips på rotary switch?

Mvh Fredrik
19  International / Scandinavia / Re: Rotary encorders till B737 panel on: October 30, 2012, 10:53:37 am
Hej

Misstänkte att encordern inte gör det för har inget 0 läge smiley

Det jag vill med mina encordrar är att t.ex. när jag stället den kanske snett åt höger "/" med en markering som pekar snett åt höger. Arduino kortet regar det som 1 (1 för att jag bara vridit lite på varv ett) Datorn ser att det skrivs ut 1 och gämnför det med possitionern för den funktionen som jag ska styra med encordern. Sedan vill jag att den ska få samma värde om jag vrider encordern lite åt höger och sedan tillbaka!

Hänger du med?

Om dessa incramentella rotary encorder är att likställas med rotary potentiometer fast pottarna går inte ett helt varv så är det fel typ av encorders jag har köpt!?

C# applikationer som länkar mina komponenter till flygsimulatorn fungerar som nedan:
1.) App. läser av korten vad kortet skrivet ut t.ex. "hejdu" smiley
2.) App. matchar sedan "hejdu" med ett offsett nummer för den valda funktionen i flygsimulatorn

Så positionen av encorderns läge och att den läser ut samma sak hela tiden i just det valda läget är avgörande för att det ska fungera!

Mvh Fredrik
20  International / Scandinavia / Rotary encorders till B737 panel on: October 30, 2012, 03:27:22 am
Hej

Jag använder det färdiga exemplet från Arduino playground:

Notera att namn är bytta och det handlar om flera encorders. Men om jag vet koden första så vet jag koden för de andra också!

Syftet med mina encorders är att det ska fungera som diverse rotary knappar i en B737 cockpit. T.ex. Brake rotary knappen kan ställas i 6 lägen m.m.

Mina encorders har 24 steg där jag vill att det steget som jag nu har inställt på ska visas på serial monitor t.ex. 12 om jag har vridit fram till den medsols och -12 om jag vridit till den motsols. Går det att få till?

Fråga så lägger jag upp en bild iså fall!

"int val;
 int VC24A = 23;
 int VC24B = 22;
 int VC24ABPos = 0;       
 int VC24ABPinALast = LOW;
 int n = LOW;

 void setup() {
   pinMode (VC24A,INPUT_PULLUP);
   pinMode (VC24B,INPUT_PULLUP);
   Serial.begin (9600);
 }

 void loop() {
   n = digitalRead(VC24A);
   if ((VC24ABPinALast == LOW) && (n == HIGH)) {
     if (digitalRead(VC24B) == LOW) {
       VC24ABPos--;
     } else {
       VC24ABPos++;
     }
     Serial.print (VC24ABPos);
     Serial.print ("/");
   }
   VC24ABPinALast = n;
 }"


Frågor på koden:
1.)
Kort och gott, är dessa rader för att man ska ha något att utgå från, för att kortet ska veta vad som händer om man inte vrider på Encordern och hur lägena för encordern är före

och efter de olika pos? 

Svårt att förklara men jag förstår till 25% varför dessa finns!
int val;
 int VC24ABPos = 0;
 int VC24ABPinALast = LOW;
 int n = LOW;

2.)
Dessa förstår jag till 40%!

Det har med att encordern vill vet när jag vrider och dess läge den hamnade på, sedan ska det fungera åt båda håll!

   n = digitalRead(VC24A);
   if ((VC24ABPinALast == LOW) && (n == HIGH)) {
     if (digitalRead(VC24B) == LOW) {
       VC24ABPos--;
     } else {
       VC24ABPos++;
_________________________________________________________________________________________

Mvh Fredrik
21  International / Scandinavia / Re: Anslutning av diverse komponenter on: October 24, 2012, 07:26:49 am
Hej

Kan jag kortsluta mina switchar m.m. om jag har en aluminium plåt som täck för mina paneler, jag behöver skruva mina komponenter i plåten för att allt se bra ut?

Bäst att fråga så signalerna inte blir alldelles för snuriga  smiley-roll smiley

Mvh Fredrik
22  International / Scandinavia / Re: Anslutning av diverse komponenter on: October 20, 2012, 04:33:38 am
Hej

Jag har löst det smiley
23  International / Scandinavia / Re: Anslutning av diverse komponenter on: October 20, 2012, 03:09:52 am
Hej

Det är i sin ordning då jag testar och just den du pekar på ingår inte i koden. Jag tror jag vet varför den uppförde sig konstigt dvs. serial monitor gav så konstiga signaler, splittern jag har till GRD fungerar nog inte som tänkt?!

Mvh Fredrik
24  International / Scandinavia / Re: Anslutning av diverse komponenter on: October 19, 2012, 09:40:57 am
Tjena smiley

Nu har jag börjat att labba med koden, se nedan:
/*
Denna kod tillhör "APU & GRD" på vänster panel (Mega2560 R3, kort 1).
Komponenterna är 5 st (mom/off/mom, L. Metall) vilket innebär att de tar upp 2 digitala pinnar styck, dessa är anslutna till D29 - D78 på Mega2560 R3, kort 1!

Se (Panelers positioner) i mappen (FSX panels bygge) för att se var panelen är belägen!

Se (FSX Panels - Elektronik mapp) i mappen (FSX panels bygge) för vad ID nr betyder!

Komponentens ID nr  Kompponenterns tillhörande pinne:
281VAGE             D29 & D30
291VAGE             D31 & D32
301VAGE             D33 & D34
311VAGE             D35 & D36
321VAGE             D37 & D38

Se (FSX Panels - Elektronik mapp) i mappen (FSX panels bygge) för vilken funktion ovan ID nr representerar!

Komponentens Pinne   ID nr i koden  Utskrivning till serial monitor
D29                  VAGE28A        buttonState28A
D30                  VAGE28B        buttonState28B
D31                  VAGE29A        buttonState29A
D32                  VAGE29B        buttonState29B
D33                  VAGE30A        buttonState30A
D34                  VAGE03B        buttonState30B
D35                  VAGE31A        buttonState31A
D36                  VAGE31B        buttonState31B
D37                  VAGE32A        buttonState32A
D38                  VAGE32B        buttonState32B
*/

//Digital pinne 29 - 38 har en switch tillkopplat till sig, ge det ett namn:
int VAGE28A = 29;
int VAGE28B = 30;
/*int VAGE29A = 31;
int VAGE29B = 32;
int VAGE30A = 33;
int VAGE30B = 34;
int VAGE31A = 35;
int VAGE31B = 36;
int VAGE32A = 37;
int VAGE32B = 38;
*/

//Detta körs första gången du slår på strömmen eller resettar kortet:

void setup() {
//Initiserar serial kommunikation på 9600 bitar/sekund:

Serial.begin(9600);
// Sätter på "internal_pullup" motstånd på komponenternas pinnar:
pinMode(VAGE28A, INPUT_PULLUP);
//pinMode(VAGE28B, INPUT_PULLUP):
}
/*
pinMode(VAGE29A, INPUT_PULLUP);
pinMode(VAGE29B, INPUT_PULLUP);
pinMode(VAGE30A, INPUT_PULLUP);
pinMode(VAGE30B, INPUT_PULLUP);
pinMode(VAGE31A, INPUT_PULLUP);
pinMode(VAGE31B, INPUT_PULLUP);
pinMode(VAGE32A, INPUT_PULLUP);
pinMode(VAGE32B, INPUT_PULLUP);
*/
//loop rutinen körs kontinuerligt till du slår av strömmen:

void loop() {
// läser statusen på pinnarna:
int buttonState28A = digitalRead(VAGE28A);
  if (digitalRead(VAGE28A) == HIGH){Serial.print("0");} else{Serial.print("UP");}
  if (digitalRead(VAGE28B) == HIGH){Serial.print("0");} else{Serial.print("DN");}

/*
int buttonState28B = digitalRead(VAGE28B);
int buttonState29A = digitalRead(VAGE29A);
int buttonState29B = digitalRead(VAGE29B);
int buttonState30A = digitalRead(VAGE30A);
int buttonState30B = digitalRead(VAGE30B);
int buttonState31A = digitalRead(VAGE31A);
int buttonState31B = digitalRead(VAGE31B);
int buttonState32A = digitalRead(VAGE32A);
int buttonState32B = digitalRead(VAGE32B);
*/
// Skriver ut statusen av komponenten på serial monitor:
/*
Serial.println(buttonState28A);

/*
Serial.println(buttonState28B);
Serial.println(buttonState29A);
Serial.println(buttonState29B);
Serial.println(buttonState30A);
Serial.println(buttonState30B);
Serial.println(buttonState31A);
Serial.println(buttonState31B);
Serial.println(buttonState32A);
Serial.println(buttonState32B);
*/
delay(1000);
}

På serial monitor får jag detta nedan:
0DN0DN0000000000UPDN0DN0DN0DN0DN0000000DN00000DN0DN0DN0DN0DN0DN0DN0DN00000000000000000DN0DN0DN0DN0DN0DN0DN000000000DN0DN0DN

Fast jag inte trycker på switchen?

Mvh Fredrik
25  International / Scandinavia / Re: Anslutning av diverse komponenter on: September 22, 2012, 09:05:35 am
Hej

1a.)
Jag tänker koppla GRD (Svart) så att det splittas ut till de olika komponenterna, nedan förklarar jag hur det ska kopplas:
1 - Från kortens grd kopplar jag en kabel (Solderless Breadboard Jumper Cables for Arduino Male - Male) till en sockerbit eller liknande!
2 - Från sockerbiten kopplar jag ut till splittdosor till projektets olika paneler där mina komponenter ska sitta på. Den största panelen består av ca 25  
     komponenter av olika dess slag
3 - Vid panelen ska en splitt dosa finnas dit jag kopplar alla mina 25 komponenter

Frågan är hur mycket är max för en kabel?

Jag menar "Solderless Breadboard Jumper Cables for Arduino Male - Male" från ebay måste ju klara allt mina komponenter eller 50% för det finns ju 2 grd portar!?

Man vill ju inte få rökta kablar hehe  smiley-cool

Det beror på om du har tänkt blanda in någon last. Du har inte visat något kopplingsschema så jag kan inte säga säkert.
Om de bara ska användas som analoga och digitala givare och kopplas direkt tillbaka till ingångar på en Arduino så har du inget last alls och du behöver inte bry dig om kablarnas kapacitet för då handlar det bara om signaler.
Potentiometrar, encoders och switchar förbrukar ingen ström och orsakar därför ingen belastning i sig själva.
Om du kopplar dem till någon komponent som förbrukar ström så är det en annan sak.

Projektet utgår från, som det är nu, enbart från "Potentiometrar, encoders och switchar" de ska bara hantera signaler och läsas av korten hur det olika står inställda. Dessa har inget som lyset m.m. så de förbrukar ingen ström !

Jag antar att det fungerar ungefär som nedan:
1 - Jag slår på ström för Arduino
2 - Beroende på hur jag kodar så börjar kortet läsa vad jag har inkopplat till ingångarna
3 - Det handlar om att få en signal att tas upp och brytas av pinen och kontrollen på kortet
4 - Signalerna sköter kortet och det är inte komponenterna i sig som hämtar signalen utan den fås av kortet (Komponenten förbrukar dvs. inte ström

Om jag kopplar in led lampor senare är det en helt annan sak men dem får man koppla för sig och programmera så att det fungerar hur jag nu vill det :?

Fördelen är ju att jag har Arduino så jag kan vara flexibel!
Quote

För fråga två får jag testa och se!

Jag återkommer och berättar hur det går smiley

Tack för hjälpen. roligt snart kan man börja koda smiley //
Mvh Fredrik
26  International / Scandinavia / Re: Anslutning av diverse komponenter on: September 21, 2012, 10:29:20 am
Hej

Då för mina anslutningar mm har jag valt nedanstående produkter:

Frågor:
1.)
Kabel: http://www.molectric.com/p295/Kopplingstrad-0,2/product_info.html

1a.)
Jag tänker koppla GRD (Svart) så att det splittas ut till de olika komponenterna, nedan förklarar jag hur det ska kopplas:
1 - Från kortens grd kopplar jag en kabel (Solderless Breadboard Jumper Cables for Arduino Male - Male) till en sockerbit eller liknande!
2 - Från sockerbiten kopplar jag ut till splittdosor till projektets olika paneler där mina komponenter ska sitta på. Den största panelen består av ca 25  
     komponenter av olika dess slag
3 - Vid panelen ska en splitt dosa finnas dit jag kopplar alla mina 25 komponenter

Frågan är hur mycket är max för en kabel?

Jag menar "Solderless Breadboard Jumper Cables for Arduino Male - Male" från ebay måste ju klara allt mina komponenter eller 50% för det finns ju 2 grd portar!?

Man vill ju inte få rökta kablar hehe  smiley-cool

2.)
Mina pottar och rotary encorders vill jag inte löda och tänker ha något liknande som "http://www.molectric.com/p630/Skarvhylsa,-klaem-med-krympslang/product_info.html") men går dessa att klämma på små ben som är ca 2-3 mm är mellanrummet så pass att det går, man kan ju böja på benen, dock lite!?

Vad rekommenderas du för kabel annars till just det ändamålet?

Om jag får svar på mina frågor så skriver jag det här smiley

Uppdatering:
Hittade detta om kabel:
http://www.conrad.se/KOPPLINGS--OCH-STYRKABEL-LIY-0%2c22-SVART-10M.htm?websale7=conrad-swe&pi=608556&Ctx={ver%2F7%2Fver}{st%2F3ec%2Fst}{cmd%2F0%2Fcmd}{m%2Fwebsale%2Fm}{s%2Fconrad-swe%2Fs}{l%2F01-aa%2Fl}{sf%2F%3Cs1%3EKOPPLINGS-+OCH+STYRKABEL+%3C%2Fs1%3E%2Fsf}{p1%2Fab3e7d6fb47eb8672a1e0288e953cc58%2Fp1}{md5%2Ff9eab32fe03475f6b9cba937df35fa84%2Fmd5}

"Elektriska och mekaniska egenskaper:
Driftspänning:
Test spänning:
Isolationsresistans:
Ledare motstånd:
Temperaturområde vid vila:
Temperaturbereichin rörelse
500 v
1200 V
min.200
Mbdkm
r? & L.
90 OlUIvkm
- 30 till + 7o "C
5 till + 70 ° C -
 
Så den jag hittat på Moletric borde klara belastningen smiley?

Du kan bara bekräfta det?
Tack på förhand//
Mvh Fredrik
27  International / Scandinavia / Re: Anslutning av diverse komponenter on: September 02, 2012, 04:05:10 am
Trodde inte det men man vet aldrig//
Mvh Fredrik
28  International / Scandinavia / Re: Anslutning av diverse komponenter on: September 02, 2012, 03:34:19 am
Hej

Vet någon hurvida det är klokt att korta ner mina potentiometrar eller inte? Tror det inte gör något men ändå! smiley

Mvh Fredrik
29  International / Scandinavia / Re: Anslutning av diverse komponenter on: August 31, 2012, 05:38:34 am
Hej

Tack då har jag vad jag behöver för att slutföra mitt kopplingschema smiley

Fråga nr 7 är flerformulerad!

Jag skall koppla allt till 2 Mega2560 kort så dessa får lika mycket att arbeta med!

Mvh Fredrik
30  International / Scandinavia / Re: Anslutning av diverse komponenter on: August 31, 2012, 03:56:55 am
Hej

Du ska ha ett stort tack hittills med din hjälp smiley

Du menar:
Jag antar att GRD betyder Ground?
Rätt

Koppla aldrig 5V och GND till samma switch. Slår du på switchen då har du kopplat ihop 5V och GND med varandra med blå rök som belöning.

Du menar att koppla dem direkt till varandra, följden blir ju kortslutning, det vill man inte ha!

Denna encorder: http://www.circuitsathome.com/mcu/reading-rotary-encoder-on-arduino verkar inte vara kopplad till 5V. Jag började fundera om det är så att man kan styra ström via de digitala portarna med (HIGH, LOW). Det låter rimligt att man inte har 5V pinnen med alls när det gäller switchar?  smiley-eek  smiley

På mina pottar ska jag det, jag följer exemplet och har testat mina pottar på exempel koden och det fungerar bra där!

Summan av detta är att om man inte har i koden t.ex.: digitalWrite(ENC_B, HIGH);
Skall pinnen 5V användas och t.ex.   digitalWrite(ENC_B, HIGH); har man ju för att kunna läsa av switchar!

Om jag uppfattat rätt så har jag ett bra hum hur jag skall koppla smiley

Om jag tänkt fel förstår jag min oror :)r  smiley-roll smiley-roll

Mvh Fredrik
Pages: 1 [2] 3 4