- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 10 von 11

Thema: Kann mir jemand auf die Sprünge helfen RC- Kanalschalter mit Nano

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Benutzer Stammmitglied
    Registriert seit
    19.05.2015
    Beiträge
    69
    Hallo,

    eigentlich sollte doch ein Nano ausreichen.
    Du kannst die Pins 4-13 und A0-A5 als digitale Ausgänge verwenden, also 16. Allerdings müßtest Du bei Pin 13 wegen der Stromstärke aufpassen, weil da bereits ein LED dranhängt und dann mit Strom zieht.
    Auch wenn Du mehrere Sachen an schaltest, solltest Du gucken, daß Du die zulässige Gesamtstromstärke des Chips nicht überschreitest, die weiß ich leider nicht aus dem Kopf.

    Vielleicht noch ein anderes mögliches Bedienkonzept: Nachdem Du Deine Anlage und den Nano eingeschaltest hast, prüft er ob beide Schalter in einer bestimmten Ausgangposition sind. Wenn nicht, macht er solange "Radau" bis beide z.B. unten stehen.
    Mit einem schaltest Du dann den Kanal mit jedem Toggle einen weiter und mit dem anderem toggelst Du dessen Zustand. Wenn ich die Lib richtig verstehe, solltest du den anderen RC-Kanal an Pin zwei mit einer zweiten RCReceive Variable hängen und verarbeiten können. Nur so als Idee...

    Gruß

    Chris

  2. #2
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.703
    .. eigentlich .. Nano ausreichen .. bei Pin 13 wegen der Stromstärke aufpassen, weil da bereits ein LED dranhängt und dann mit Strom zieht ..
    Hmmm. Ich finde solche allgemeine Aussagen nicht immer hilfreich, ne Messung wäre besser: mein nano-Clone als board-alone zieht am Labornetzteil bei 8,9 V VIN mit LED/PB5 on 23 mA und mit LED/PB5 off 19 mA. Mangels anderer Anschlüsse bei der Messkonfiguration lässt sich nun der Bedarf der LED im on-Zustand recht genau nennen.

    .. zulässige Gesamtstromstärke des Chips nicht überschreitest, die weiß ich leider nicht aus dem Kopf ..
    Ooch, die ist kein Geheimnis, steht im Datenblatt unter Absolute Maximum Ratings (und sogar in meinem Kopf)x:
    DC Current per I/O Pin . . . . . . . . . . . . . 40.0mA
    DC Current VCC and GND Pins. . . . . . . . 200.0mA
    Geändert von oberallgeier (15.01.2016 um 09:16 Uhr) Grund: Datenblattlink zugefügt
    Ciao sagt der JoeamBerg

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von Rabenauge
    Registriert seit
    13.10.2007
    Ort
    Osterzgebirge
    Alter
    56
    Beiträge
    2.212
    Bodo, du kannst ohne weiteres die 12 Kanäle mit _einem_ Nano schalten. Auch 64, wenn du willst.
    Dazu nimmt man einfach ein Schieberegister (auch: Portexpander), dann brauchst du drei Pins, hast aber schonmal acht Ausgänge daraus gemacht. Das wirklich tolle ist: man kann die Dinger kaskadieren, d.h. einfach hinter einander schalten. So sind selbst 32 Ausgänge mit den drei Pins kein Problem.
    http://fritzing.org/projects/cat-leds
    Hier wird das recht anschaulich dargestellt.
    Im Seeteufel habe ich das auch so gemacht (allerdings mit zusätzlichen Treiber-Transistoren hinter den Ausgängen, da das im Bild gezeigte nur noch mit LOW-Current-LED's gemacht werden sollte wegen der Stromaufnahme), dort steuert letztendlich ein solcher Baustein den gesamten Christbaum an den Masten, und das Radar auch noch.
    Die Portexpander kosten Pfennige, die Transistoren und Widerstände auch...
    Auch die Ansteuerung ist nicht weiter kompliziert:
    https://www.arduino.cc/en/Reference/ShiftOut
    Man erzeugt einfach das passende Bitmuster (z.B. 00010000 wenn Kanal 4 an sein soll oder 11000000 für Kanäle 1 und 2), und schickt es raus, wie im Link beschrieben.
    Durch diese Vorgehensweise kann man das so aufbauen, dass jedes Licht (Lämpchen, LED, was auch immer) an einem Ausgang des Portexpanders hängt. Nun kann man ganz beliebige Lichtmuster erzeugen, indem man einfach für die Ausgänge, die man gerade braucht, ne 1 raus schickt. Auch mal den ganzen Christbaum als Lauflicht nehmen, geht damit, oder irgendwelche Lampen blinken lassen, wenn der Akku leer wird.
    Einziger Nachteil: die Lichter dimmen geht nur, wenn man alle zusammen dimmt.

    Was switch/case angeht: ich weiss nicht, was der Compiler sagt, aber in der Arduino-Referenz find ich nix über irgendwelche Limits. Ich selbst hab da bestimmt schon mehr als 10 Auswahlmöglichkeiten benutzt, kein Problem.
    Wahrscheinlich ist das Limit der verfügbare Speicher.

    Was deine sechs Kanäle angeht: ich hab auch nicht mehr auf der MX. Das einzige, echte Problem isses immer, das Ganze so zu entwerfen, dass es "bedienbar" bleibt, d.h. man nach nem Jahr auch noch weiss, "wie das denn ging".
    Daher hab ich mir z.B. eben die Bleuchtungssteuerung komplett vom Hals geschafft- es gibt keinerlei Grund, sowas von Hand zu steuern.
    Es wird immer irgend ein Fahrzustand dargestellt. Du könntest z.B., wenn das Miniuboot am Haken hängt (dann ist der Kran in Betrieb, das kann der Arduino leicht detektieren) automatisch die Lichter für "manövrierbehindert" setzen oder so.
    Gerade bei nem Schiff mit recht vielen Funktionen hat man auch so genug zu tun....
    Beim Seeteufel zum Beispiel gehen automatisch die Schlepplichter an, so wie eine der Leinen ins Wasser geworfen wird. Und auch wieder aus, wenn ich die Leine abwerfe.
    Für den ganzen Sermon brauche ich- überhaupt keinen Kanal.
    Aber man kann noch mehr machen- zum Beispiel wird es kaum Sinn machen, einen Kran zu drehen, wenn er den Arm nicht zumindest minimal angehoben hat (oder wenigstens den Haken), so kann man einiges an Kanälen sparen. Ich bediene vier Servos (und damit vier Funktionen) mit "nem Rest von zwei Kanälen"- so, dass mir die Kanäle trotzdem noch für andere Funktionen zur Verfügung stehen.

    Mein Bordrechner (ist allerdings ein Mega 2560) erledigt noch andere Dinge- er überwacht z.B. die Akkus und auch den Rumpf auf Wassereinbrüche. Wenn ich mal Lust haben werd, bau ich das noch weiter aus, ich will ne echte Drive-by-wire-Steuerung haben, bei der der Rechner meine Steuerkommandos lediglich richtig interpretiert und passend umsetzt. Das bietet dann z.B. Möglichkeiten wie nen Kreisel einzubauen, damit das Ding bei Steuerkommando "Ruder geradeaus" auch wirklich ganz gerade fährt.
    Oder auch präzises Manövrieren rückwärts- das ist per Hand beim Seeteufel sehr schwierig.
    Grüssle, Sly
    ..dem Inschenör ist nix zu schwör..

  4. #4
    HaWe
    Gast
    man kann an einen Nano auch einfach einen 2. Nano (oder auch Mega) per I2C dran hängen, schon kann man mit 2 pins (A4+A5 für i2c, IIRC) sämtliche Pins des 2. Arduinos ebenfalls abfragen. Da man I2C kaskadieren kann und Arduinos ihre Slave-addr-ID selber festlegen können, kann man sogar über 100 zusätzliche Arduinos mit allen ihren Pins alle mit diesen 2 Nano-Master-Pins abfragen. Was will man mehr? (Das finde ich auch sogar noch viel einfacher als die Schieberegister!)

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von Rabenauge
    Registriert seit
    13.10.2007
    Ort
    Osterzgebirge
    Alter
    56
    Beiträge
    2.212
    Das ist keineswegs einfacher.
    Du musst nämlich auf jeden einzelnen eine eigene Software aufspielen.
    Hier (wo es lediglich darum geht, ein paar Ausgänge mehr zu schalten) wäre das mit Kanonen auf Spatzen geschossen.
    Bodo bezeichnet sich selbst als Anfänger!
    Nen Schieberegister beschreiben ist dagegen weit simpler- das einzig komplizierte ist es da, die richtigen Bitmuster zu bilden, wenn man denn auch kompliziertere braucht.
    Ähnliche Daten musst du auch nem zweiten Board schicken, aber nebenbei die Adressierung im Auge behalten und- du brauchst ne Bibliothek, die bei Schieberegistern nicht nötig ist.
    Insofern die einfachere und sparsamere Methode, in jeder Hinsicht.
    Einzige Ausnahme: jemand lötet nich gerne...aber Bodo ist Modellbauer, die machen das.
    Grüssle, Sly
    ..dem Inschenör ist nix zu schwör..

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    18.07.2015
    Ort
    Bayern
    Beiträge
    17
    Guten Morgen an alle. Wie Syl schon geschrieben hat bin ich Anfänger und da denke ich hab ich mit dem Schieberegister zu kämpfen. Ich werde mir die Sache mal überlegen und angreifen. Im Moment hab ich eine Teillösung für mein Projekt und das Schiff will ja immer etwas verändert werden.
    Geändert von Schiffe Bodo (19.01.2016 um 07:31 Uhr)

Ähnliche Themen

  1. Kann mir jemand helfen???
    Von Nasume2 im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 4
    Letzter Beitrag: 02.01.2012, 21:15
  2. Kann mir jemand helfen
    Von Stinker196 im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 1
    Letzter Beitrag: 23.11.2008, 18:26
  3. kann mir jemand helfen???
    Von xbgamer im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 7
    Letzter Beitrag: 22.10.2006, 15:07
  4. kann mir da mal jemand helfen ??
    Von LC-HC im Forum C - Programmierung (GCC u.a.)
    Antworten: 8
    Letzter Beitrag: 10.02.2006, 00:04
  5. Kann jemand Helfen ????
    Von im Forum Controller- und Roboterboards von Conrad.de
    Antworten: 4
    Letzter Beitrag: 27.02.2004, 19:41

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen