Sperrfeuer Posted May 2, 2017 Posted May 2, 2017 Hallo, ich versuche momentan herauzubekommen ob es möglich ist ein (Modellbau-)Servo mit Hilfe von einem Arcaze- oder Arduinoboard anzusteuern....zb für Landeklappenanzeige. Gefunden habe ich bisher ein Tutorial für die Mobiflight Software: https://www.mobiflight.com/de/tutorials/servo-motor-fuer-flaps-anzeige.html#Das_brauchst_Du_f%C3%BCr_dieses_Tutorial Unklar ist, ob die Daten auch aus DCS abgegriffen werden können?! Gruß Uwe I7-7700k 4,2 / 32 GB RAM / Geforce 2080 TI / 2x M2 500GB SSD / 1 TB SSD / Pimax 5k / WinWing Stick and Throttle Server: [Wolfpack] Germany 93.186.198.98 Port 10308 IG Callsign: Fenris
McMicha Posted May 3, 2017 Posted May 3, 2017 Moin Uwe, leider kann die Arcaze das derzeit noch nicht, da es keine Erweiterungskarten für Schrittmotoren und/oder Servomotoren gibt. Angeblich gab es mal Prototypen von solchen Karten, aber die sind bisher nicht in Serie gegangen. Vielleicht hilft da mal eine E-Mail oder ein Anruf beim Hersteller. Für so ganz einfache Dinge wie die Landeklappen, hat hier aber jemand eine Lösung beschrieben. Ansonsten kannst du dir DCS Bios (2) mit Arduino Karten anschauen. Leider weiß ich nicht ob die unterschiedlichen DCS Export Scripte sich mit einander vertragen. Zusätzlich musst du da relativ viel selber programmieren. CU Micha Simpit Software by SDA "SIMPIT DEVELOPER ASSOCIATION" DCS ExportScript D.A.C. DCS to Arcaze Communicator Ikarus a new Virtual Cockpit Software Deutscher Forums Thread English Forums Thread Hard/Software: AMD Ryzen 7 1800X, 32 GiB RAM, extra SSD for Windows 10 and DCS World, AMD Vega Frontier Edition with 16 GiB VRAM
BitMaster Posted May 3, 2017 Posted May 3, 2017 (edited) Schnittstellen Karte haben wir zu Hauf in der Firma für CNC Brennschneider und Plasma, die sind aber vorwiegend noch ISA oder "schon" PCI und werden, soweit ich das verstanden habe, über SPS angesteuert. Hilft Dir das ? wenn ja, PM mich edit* die Karten sind auch 10x so groß wie ein Arduino oder Rasperry.... mehr Info erst nach Rücksprache mit dem Entwickler der Firma, nicht mein Fachgebiet Edited May 3, 2017 by BitMaster Gigabyte Aorus X570S Master - Ryzen 5900X - Gskill 64GB 3200/CL14@3600/CL14 - Sapphire Nitro+ 7800XT - 4x Samsung 980Pro 1TB - 1x Samsung 870 Evo 1TB - 1x SanDisc 120GB SSD - Heatkiller IV - MoRa3-360LT@9x120mm Noctua F12 - Corsair AXi-1200 - TiR5-Pro - Warthog Hotas - Saitek Combat Pedals - Asus XG27ACG QHD 180Hz - Corsair K70 RGB Pro - Win11 Pro/Linux - Phanteks Evolv-X
Sperrfeuer Posted May 4, 2017 Author Posted May 4, 2017 Danke für die Infos. Ich werde dieses Bauteil in meiner to-do Liste nach hinten schieben. Der Link zu dem DCS-Bios sieht interessant aus...auch weil ich bei der den einfachen Lösung nicht durchblicke ;) Woher kommt die Eingabeinfo für das Servo? Manuell durch den "Piloten" über den Servotester? Gruß Uwe I7-7700k 4,2 / 32 GB RAM / Geforce 2080 TI / 2x M2 500GB SSD / 1 TB SSD / Pimax 5k / WinWing Stick and Throttle Server: [Wolfpack] Germany 93.186.198.98 Port 10308 IG Callsign: Fenris
McMicha Posted May 4, 2017 Posted May 4, 2017 Moin Uwe, ich habe das nicht nach gebaut, aber im Prinzip funktioniert es wie folgt. Er hat einen einfachen Servertester, ähnlich diesem Bausatz, genommen und anstatt des Potis nutzt er mehre Parallel angeschlossene Widerstände. Es werden so viele Widerstände benötigt wie die Flapsanzeige Stellungen anzeigen soll. Damit die parallel geschalteten Widerstände sich nicht gegenseitig stören, gibt es in jeder Zuleitung eine Diode. Diese Verhindert auch, das der Strom zurück zur Arcaze fließt. Statt feste Widerstände, würde ich Potis nehmen, dann brauch man nicht soviel rechnen und kann einfach die entsprechende Stellung einstellen. Zusätzlich müsstest du ein bisschen am DCS ExportScript für das Flugzeug herumgefuchtelt werden, so das dieses, für jede Stellung ein eigenen Wert mit eigener ID sendet. Diese einzelnen IDs kann man dann in DAC auswerten und den entsprechenden Arcaze PIN aktivieren. Ich übernehme keine Garantie für diese Ausführung, da die Idee nicht auf meinem Mist gewachsen ist und ich sie selber noch nicht ausprobiert habe. CU Micha Simpit Software by SDA "SIMPIT DEVELOPER ASSOCIATION" DCS ExportScript D.A.C. DCS to Arcaze Communicator Ikarus a new Virtual Cockpit Software Deutscher Forums Thread English Forums Thread Hard/Software: AMD Ryzen 7 1800X, 32 GiB RAM, extra SSD for Windows 10 and DCS World, AMD Vega Frontier Edition with 16 GiB VRAM
FSFIan Posted May 4, 2017 Posted May 4, 2017 Mit DCS-BIOS würde der Arduino-Sketch dafür ungefähr so aussehen: #include <Servo.h> // muss vor DcsBios.h inkludiert werden, um ServoOutput zu ermoeglichen #define DCSBIOS_IRQ_SERIAL #include "DcsBios.h" // die 544 und 2400 in der naechsten Zeile sind die Limits des Servos und werden // unveraendert an die Arduino Servo-Library weitergegeben // die 10 ist der Arduino-Pin, an dem das Kontrollsignal fuer den Servo ausgegeben werden soll DcsBios::ServoOutput flapPos(0x10a0, 10, 544, 2400, [](unsigned int newValue) -> unsigned int { // diese Funktion muss den Wert, den DCS-BIOS sendet (zwischen 0 und 65535) // in die Pulsbreite fuer den Servo umrechnen return map(newValue, 0, 65535, 544, 2400); }); void setup() { DcsBios::setup(); } void loop() { DcsBios::loop(); } Bei DCS-BIOS musst du dich etwas in die Programierung einarbeiten. Arduino-Tutorials und Bücher gibt es genug, es macht auch Spaß, sowas zu lernen, aber es kostet natürlich Zeit. Der Vorteil ist dann, dass du alle Bauteile verwenden kannst, die sich mit einem Arduino-Board ansprechen lassen (also so gut wie alles, inklusive kleinen Grafik-Displays, Schrittmotoren, Hobby-Servos oder Dot Matrix Display im CMSP). Die Arduino-Klone aus China funktionieren super und sind sehr preiswert: ca. 3 Euro für einen Arduino Nano mit 12 nutzbaren digitalen I/O-Pins, 2 analogen und 6 die digital oder analog genutzt werden können, oder 8 Euro für den Arduino Mega 2560 mit 52 nutzbaren digitalen I/O-Pins und 16 digital/analog-Pins. DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
Nero.ger Posted May 4, 2017 Posted May 4, 2017 soweit ich mich errinern kann sind die Ausgänge des Arduino bis maximal 40mA belastbar, schau also vorher in das Datenblatt des Servos bevor du nen MasterCaution und bischen rauch hast ;) 'controlling' the Ka50 feels like a discussion with the Autopilot and trim system about the flight direction.
FSFIan Posted May 4, 2017 Posted May 4, 2017 Der Kontrollpin des Servos zieht nicht viel Strom, den kannst du direkt an den Arduino hängen. Der Servo selbst wird sich wahrscheinlich ein paar hundert mA genehmigen. Wenn das weniger als ca. 400 mA sind, kannst du den mit über USB versorgen, sonst brauchst du ein externes Netzteil. Da der Servo vergleichsweise viel Strom zieht, empfiehlt sich auch ein Kondensator (200 bis 500 Mikrofarad) zwischen +5V und GND in der Nähe des Servos. DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
Sperrfeuer Posted May 5, 2017 Author Posted May 5, 2017 Danke für die geniale Hilfestellung :thumbup: Arduino und Programmierung sind für mich totales Neuland. Aber sich hier einzufuchsen bietet sich an wenn ich auf der Baustelle rumhänge und nicht am Pit arbeiten kann. Ich werde mal schaun, was ich an Miniservos aus zerschrotteten Schaumwaffeln hier rumliegen habe und die Dinger zur Not durchmessen. I7-7700k 4,2 / 32 GB RAM / Geforce 2080 TI / 2x M2 500GB SSD / 1 TB SSD / Pimax 5k / WinWing Stick and Throttle Server: [Wolfpack] Germany 93.186.198.98 Port 10308 IG Callsign: Fenris
FSFIan Posted May 5, 2017 Posted May 5, 2017 Zum Ausprobieren bietet sich der "Sweep"-Beispielsketch an (Datei > Beispiele > Servo > Sweep in der Arduino-IDE). Wenn du ein Netzteil hast (Labornetzteil oder ein altes Computernetzteil, das du einschaltest, indem du Grün und Schwarz am 20- oder 24-poligen Mainboardstecker verbindest), kannst du den Servo darüber versorgen und nachmessen was der verbraucht. Ansonsten einfach über USB versorgen und sehen ob es klappt. Kaputt gehen tut dabei nichts: die Arduino-Boards haben eine sich selbst rückstellende Sicherung ("Polyfuse"), die verhindert, dass zuviel Strom aus dem USB gezogen wird. Selbst wenn die versagen sollte, die USB-Spec sieht vor, dass ein Motherboard sogar aushalten muss, wenn es einen Kurzschluss gibt. Wenn die Polyfuse auslöst, sieht es erstmal so aus, als ob das Arduino-Board hinüber ist. Einfach ein paar Minuten warten, dann tut's wieder. Wenn der Servo nicht richtig oder gar nicht funktioniert, bekommt er wahrscheinlich nicht genug Strom oder der Kondensator fehlt. Falls die Teilekiste gerade keinen passenden Kondensator beinhaltet, aber ein altes, kaputtes Motherboard zur Hand ist, findet man in der Nähe der Spannungswandler einige große Elkos zum Ausschlachten. Ein einzelner Hobby-Servo braucht in der Regel weniger als 400 mA. Sobald man mehr als einen anschließen will, kommt man aber auch je nach Servo-Typ schnell darüber. DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
Sperrfeuer Posted May 5, 2017 Author Posted May 5, 2017 Labornetzteil ist vorhanden. Ich hab mich mal grad mit Kleinkram, wie Stecker, Breadboard, Kabel, Widerständen und Arduinoliteratur für Dummies eingedeckt. Stay tuned... I7-7700k 4,2 / 32 GB RAM / Geforce 2080 TI / 2x M2 500GB SSD / 1 TB SSD / Pimax 5k / WinWing Stick and Throttle Server: [Wolfpack] Germany 93.186.198.98 Port 10308 IG Callsign: Fenris
Recommended Posts