Bitte ändert euer Passwort!

Im März 2026 wurde das Forum gehackt. Dabei hatten die Angreifer Zugriff auf die Datenbank und somit Zugriff auf eure Passwörter. Auch wenn das Forum kein Passwort im Klartext speichert, können die Angreifer eure Passwörter knacken. Bitte ändert daher dringend euer Passwort für das Forum. Solltet ihr das gleiche Passwort auch an anderer Stelle verwenden, ändert es bitte unbedingt an allen Stellen!

Schalter deaktivieren - aber Schaltposition beibehalten

  • skyfreak
  • Offline
  • Platinum Mitglied
  • Platinum Mitglied
  • Beiträge: 2947
  • Thanks: 1450

Re: Schalter deaktivieren - aber Schaltposition beibehalten

29 Aug. 2020 10:49 - 29 Aug. 2020 10:58
#
habe ich mir das so vorzustellen?

A ist der primäre schalter und soll +100 oder -100 ausgeben
B ist der geber zum "Halten" und soll bei B = +100 den letzten schaltzustand von A fixieren, auch wenn A geschalten wird?




interessant wäre auch noch der anwendungsfall für diesen wunsch

gruss
guido
Fliegergruss
GUIDO



_________________________________________________________
Too many dicks on the dance floor.
Too many dicks!​


Letzte Änderung: 29 Aug. 2020 10:58 von skyfreak.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • Günter07
  • Neues Mitglied
  • Neues Mitglied
  • Thanks: 0

Re: Schalter deaktivieren - aber Schaltposition beibehalten

29 Aug. 2020 16:20 - 29 Aug. 2020 16:25
#
Hallo Claus,

wenn es keine Lebenswichtige Funktion ist nimm einfach LUA!

Hier hast Du einmal einen Versuch der funktionieren sollte:

***************************************
local function init()
ctrlIdx = system.registerControl(1, "Sicherheitsschalter","SHS")
end
local function loop()
if system.getInputs("SA") == 1 then
system.setControl(1, system.getInputs("SB"),0,0)
end
end
return { init=init, loop=loop, author="PGK", version="0.10",name="Test"}

*****************************************

Den Text zwischen den Sternen kopierst Du am besten in Notepad++ und speicherst es ab mit der Endung *.lua

Der Sicherheitsschalter ist in meinem Beispiel "SA". Ändere es einfach auf den von dir gewünschten Schalter.
Nach dem == kannst Du die Schalterstellung eingeben bei der er sperren soll!

1 = +100
0 = 0
-1 = 100

Der Funktionsschalter ist in meinem Beispiel "SB". Einfach auf deinen ändern.
Der Funktion musst Du dann natürlich den Apps-Schalter 1 zuweisen!!!

Viel Spaß beim Ausprobieren :P :P :P

LG Gü
Letzte Änderung: 29 Aug. 2020 16:25 von Günter07.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • skyfreak
  • Offline
  • Platinum Mitglied
  • Platinum Mitglied
  • Beiträge: 2947
  • Thanks: 1450

Re: Schalter deaktivieren - aber Schaltposition beibehalten

29 Aug. 2020 17:34 - 29 Aug. 2020 17:50
#
günther ich bin neugierig und lerne gerne dazu
mit lua kenne ich mich allerdings gar nicht aus

gesetzt in deinem beispiel SB ist ein 2-er switch und liefert somit -100 oder +100
und SA ist geschaltet also 1 und liefert +100
was passiert dann mit SB in dieser zeile
respektive was liefert dann SB

Code:
system.setControl(1, system.getInputs("SB"),0,0)

respektive, was macht der code 0,0 beim SB

gruss
guido
Fliegergruss
GUIDO



_________________________________________________________
Too many dicks on the dance floor.
Too many dicks!​


Letzte Änderung: 29 Aug. 2020 17:50 von skyfreak.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • Günter07
  • Neues Mitglied
  • Neues Mitglied
  • Thanks: 0

Re: Schalter deaktivieren - aber Schaltposition beibehalten

29 Aug. 2020 17:59 - 29 Aug. 2020 18:08
#
Hallo Guido,

zunächst wird in diesen Zeilen der APP-Schalter initialisiert und benannt:

local function init()
ctrlIdx = system.registerControl(1, "Sicherheitsschalter","SHS")
end

Du kannst bis zu 10 APP-Schalter verwenden und ich habe Schalter 1 genommen. Sollte der bereits belegt sein, nimmt man halt einen anderen...

Dann kommt die Schleife die immer wieder durchlaufen wird:

local function loop()
if system.getInputs("SA") == 1 then
system.setControl(1, system.getInputs("SB"),0,0)
end

In meinem Fall steht in der 1. Zeile wenn der Schalter SA +100 hat dann führe die nächste Zeile aus! Wenn nicht wird die Schleife verlassen.

In der zweiten Zeile steht eigentlich nur mehr nimm die Stellung von SB und übertrage diese zum APP-Schalter.

In deiner gefragten Zeile wird einfach der Wert des Schalters SB an den APP-Schalter 1 übertragen!

Nachtrag: Auf diese Art kann man auch einen analogen Wert als Funktion nutzen! Nimm z.B. einen Drehregler. Ist der Sicherheitsschalter aus kannst Du mit dem Poti den Wert beliebig ändern. Sicherheitsschalter ein und schon ist der Wert eingefroren.

UPS, noch ein Nachtrag weil Du nach 0,0 gefragt hast: DIe erste 0 = Verzögerung, die zweite 0 = smoothtype (lowpass filter)

Hier findest Du die Beschreibung: LUA Api 1.5

LG Gü
Letzte Änderung: 29 Aug. 2020 18:08 von Günter07.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • skyfreak
  • Offline
  • Platinum Mitglied
  • Platinum Mitglied
  • Beiträge: 2947
  • Thanks: 1450

Re: Schalter deaktivieren - aber Schaltposition beibehalten

29 Aug. 2020 18:12 - 29 Aug. 2020 18:21
#
perfekt, dann sollte genau das was ich oben gescribbelt habe laufen
merci vielmal für die erklärenden worte, wie gesagt null lua kenntnis aber immer viel neugier

gruss
guido
Fliegergruss
GUIDO



_________________________________________________________
Too many dicks on the dance floor.
Too many dicks!​


Letzte Änderung: 29 Aug. 2020 18:21 von skyfreak.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • ClausS
  • Autor
  • Offline
  • Neues Mitglied
  • Neues Mitglied
  • Beiträge: 18
  • Thanks: 3

Re: Schalter deaktivieren - aber Schaltposition beibehalten

29 Aug. 2020 19:04 - 29 Aug. 2020 19:10
#
Hi Kollegen,

danke schon mal für Eure Infos!

@Guido: Deine Entscheidungsmatrix stellt mein Wunschscenario richtig dar, so habe ich es gemeint :-).

@Günther: Danke für den kreativen Vorschlag und mundgerechte Darstellung :) Deine Lua-Lösung werde ich mir nun mal in Ruhe ansehen, wäre super wenn es damit geht!

Vlt. geht´s aber ja auch direkt mit einer Jeti-Programmierung, was natürlich noch einfacher wäre!


Noch ein paar Hintergrundinfos:
Es geht mir konkret um die Ansteuerung eines Einziehfahrwerks in einem Segler.

Ich komme leider hin und wieder beim Hantieren unbeabsichtigt an den Fahrwerksschalter. Im ungünstigsten Fall ziehe ich das Fahrwerk am Boden ein und das Modell rauscht nach unten und beschädigt die Fahrwerksklappen/Klappenscharniere. Im besseren Fall will das Fahrwerk ausfahren, wenn das Modell am Boden liegt. Hier greift dann die Servoabsicherung und es passiert in der Regel nichts Schlimmes.

Beide Fälle möchte ich aber mit einem Sicherheitsschalter absichern. D.h. sobald das Modell am Boden liegt, verriegel ich den aktuellen Fahrwerksschalter per Software (durch Aktivierung des Sicherheitsschalters) in seiner aktuellen Position. Komme ich nun aus Versehen an den Fahrwerksschalter, passiert nix und der Segler bleibt entweder auf dem Fahrwerk stehen oder das Fahrwerk fährt bei liegendem Modell nicht aus.

Mein Fahrwerk liegt auf einem 3 Stufenschalter "Sc" (Eingefahren -100% - Mittelstellung 0% - Ausgefahren +100%).
Der Sicherheitsschalter soll der Drehgeber "P8" sein. Auf diesem Drehgeber liegt auch schon meine Motor-Sicherheitsschalter.
Letzte Änderung: 29 Aug. 2020 19:10 von ClausS.
Folgende Benutzer bedankten sich: skyfreak

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Ladezeit der Seite: 0.624 Sekunden
Powered by Kunena Forum