Idee/Hilfe: Commodore C128 Umbau: von diversen Kippschalter und Taster zu RPI mit Touchdisplay

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Ahoi und Moin Moin von der Küste,

    der Commodore 64 ist so erfolgreich gewesen mal man unter anderen diesen so leicht erweitern konnte und ich habe hier schon diverse C64 Geräte mit Kippschaltern und Tastern stehen und das funktioniert auch alles wunderbar.

    Doch nun ist mir ein C128 im Desktop Gehäuse in die Hände gefallen, dh ich habe viel Platz und ich würde hier gerne auch diverse Umbauten vornehmen, aber wenn möglich würde ich das hier gerne anders lösen wollen, und zwar mit einem RPi und einem Touchdisplay.

    Die Wunschvorstellung wäre ja, das ich genau diese ganzen einfachen Kippschalter und Taster bequem per Touchdisplay bedienen kann.
    Das sieht dann nicht nur schick aus, sondern wäre mal was neues.


    Soweit die Idee... und damit endet auch schon mein Können, bzw. das nachher alles per Software zu steuern ist kein Problem, das bekomme ich hin.

    Aber ich brauche dringend Hilfe bei dem Thema Hardware und ich hoffe auf euch hier ;)

    Daher hier mein kleiner Fragenkatalog:

    1. Was brauche ich an Hardware um zb 8 Kippschalter und Taster (Reset-Buttons) ersetzen?
      Kann ich dafür zb ein 8-Kanäle RelaisModul nutzen?
    2. Kann ich den Status eines "Schalters" abfragen?
      Wenn ich zb einen "Schalter" einschalte und den RPi dann aus- und wieder einschalte, erkennt das RPi dann den Status des aktuellen Schaltzustands?
    3. Was brauche ich um auch den C128 per RPi ein/ausszuschalten? Kann ich das auch mit dem RelaiModul machen?

    Und keine Sorge, ich werde diese Umbauten nicht selber vornehmen, da habe ich jemanden an der Hand, aber ich möchte ihm das halt so gut wie Möglich schon alles vorbereiten damit er die Motivation nicht verliert ;)

    Gruß Sönke

  • Idee/Hilfe: Commodore C128 Umbau: von diversen Kippschalter und Taster zu RPI mit Touchdisplay? Schau mal ob du hier fündig wirst!

  • Moinsen,

    Zu deiner ersten Frage: Relais brauchst du keine, daß ließe sich auch sehr elegant über sg Portexpander lösen. PCF8574, MCP23x17, MCP23x08, MCP23x18 um nur mal einige zu nennen. Je nach Variante steht das X für I²C bei einer "0" und das "S" für die Anschlußmöglichkeit über den SPI Bus. Diese können sowohl zum Auslösen von Schaltvorgängen, wie auch zur Abfrage noch vorhandener oder übrig gebliebener Schalter verwendet werden. Die funktionieren Bidirektional ( also in beide Richtungen).
    Zur Frage 2. - Ja es gibt eine GPIO Portkombination, mit der das PI gestartet und wieder heruntergefahren werden kann. Das kann über jeden X-beliebigen mech. Taster erfolgen
    Zu Frage 3. Ob man diese Aufgabe über ein Relais lösen sollte streiten sich die Gelehrten ;)
    Ja, man kann es über ein Relais machen, nur dann solltest du im Hinterkopf behalten, daß bei einer Störung am PI und damit am entsprechenden GPIO Ausgang des PI der C128 ebenfalls unvermittelt abgeschaltet wird, weil die Steuerspannung für das Relais wegfällt.
    Alternativ, wenn du nur Gleichspannungen schalten willst geht auch ein mehr oder minder fette MOSFET, bei Wechselspannung kann man auf elektronische Halbleiter sg SSR Solid State Relais setzen.
    Wenn der MOSFET über keinen angeschlossenen Entladewiderstand verfügt, bleibt der Schaltzustand auch erhalten, wenn potentialfrei die Steuerspannung wegfällt.

    Franky

    Franky

  • Die Wunschvorstellung wäre ja, das ich genau diese ganzen einfachen Kippschalter und Taster bequem per Touchdisplay bedienen kann.

    1. Was brauche ich an Hardware um zb 8 Kippschalter und Taster (Reset-Buttons) ersetzen?
      Kann ich dafür zb ein 8-Kanäle RelaisModul nutzen?
    2. Kann ich den Status eines "Schalters" abfragen?
      Wenn ich zb einen "Schalter" einschalte und den RPi dann aus- und wieder einschalte, erkennt das RPi dann den Status des aktuellen Schaltzustands?
    3. Was brauche ich um auch den C128 per RPi ein/ausszuschalten? Kann ich das auch mit dem RelaiModul machen?

    Mir ist nicht so richtig klar, was du vorhast... du willst 8 Kippschalter/Taster "per Touchdisplay bedienen"? Also, ich glaube, das kannst du nicht gemeint haben, auch wenn du es geschrieben hast.
    Bei 1. schreibst du, du willst die Schalter/Taster durch den Pi und das Touchdisplay ersetzen. Das kann ich mir eher vorstellen. Also keine physischan Schalter/Taster, sondern ein Touchdisplay, das die Schalter/Taster ersetzt...?

    Einer dieser Taster ist offenbar der Resetknopf für den C128, die anderen, nehme ich an, sind mit der Hardware des C128 verbunden und du kannst damit irgendwas einstellen oder auslösen...

    Zu 1: Der Pi hat genügend Ausgänge, um 8 Schalter abzubilden. Daür brauchst du keine Portexpander. Diese Empfehlung verstehe ich nicht.
    Du kannst Relais benutzen - ich finde, das Klicken der Relais hätte hier sogar einen gewissen Charme. Es geht aber auch mit Halbleiterschaltern aller Art (Optokoppler, Mosfets, SSR, ...) Da musst du natürlich je nachdem, was du genau schalten willst (Spannung/Strom), das passende Teil verwenden.

    Zu 2: Übliche Relais und auch Halbleiterschalter behalten ihren Zustand (anders als ein physischer Schalter) nicht bei, wenn der Strom weg ist. Du müsstest in diesem Fall den Zustand (an/aus) in einem nichtflüchtigen Speicher ablegen und nach dem Neustart die Schaltzustände wiederherstellen.
    Alternativ könntest du bistabile Relais einsetzen. Die behalten ihren Zustand bei. Allerdings weißt du dann immer noch nicht, welchen Zustand sie gerade haben. Das müsstest du über Eingänge am Pi erfassen und die Software kann dann den richtigen Zustand auf dem Display anzeigen. Das Erfassen der bestehenden Schaltzustände musst du aber erst mal (hardwareseitig) realisieren - das geht, ist aber unter umständen etwas Getüftel. Die erste Variante ist daher vermutlich einfacher zu realisieren. Die zweite hat den Vorteil, dass die zuletzt vorgenommenen Schaltzustände sofort da sind, wenn der Pi gestartet wird. Es hängt jetzt ein wenig davon ab, ob du die Schaltzustände vor dem Start der beiden (Pi und C128) korrekt haben musst, oder ob der Pi sie nach dem Start noch einstellen kann oder ob der Pi erst startet und die Schaltzustände einstellt und dann den C128 startet...

    Zu 3: Den C128 selbst kannst du mit einem Relais einschalten. Oder (wie oben schon gesagt) mit einem SSR o. ä. Das Thema Ausfall ist m. E. fragwürdig. Warum sollte der Pi ausfallen? Weil der Strom ausfällt...? Dann fällt der C128 sowieso auch aus. Ansonsten ist das eigentlich kein erwartbarer Punkt. Falls man auf Nummer sicher gehen will, sollte man eine passende Selbsthalte-Schaltung bauen oder ein bistabiles Relais einsetzen.

    Eine Empfehlung: Wenn du wirklich NUR ein Touchdisplay haben willst, das die Taster ersetzt und somit den C128 steuert und wenn der Pi sonst keine Funktionen hat, dann setzt du besser einen Microcontroller ein. Der Pi selbst ist für sowas erstens völlig überdimensioniert, zweitens zu anfällig, drittens zu langsam (Bootvorgang), viertens zu teuer...

    Deine Aufgabe läst sich besser mit einem Mikrocontroller lösen. Ein Pi Pico zum Beispiel oder ein Arduino Nano oder ein ESP32. Vorteil: Der µC ist zuverlässiger, preiswerter und schneller (damit meine ich, nach dem Einschalten sofort aktiv, er muss nicht erst langwierig ein Betriebssystem booten). Ein leistungsfähiger µC wie der ESP32 kann auch einfaches Touchdisplay ansteuern. Allderdings gibt es eine elegante und wesentlich einfachere Lösung, nämlich ein Display von Nextion. Die bekommen vorab deine Anzeigebilder programmiert und erhalten nur noch die Anzeigewerte per serieller Verbindung vom µC. Du kannst also deinen Schalter vorab "malen" und der µC sagt dem Display dann nur noch, ob es den Schalter als eingeschaltet oder ausgeschaltet darstellen soll. Du kannst dir auch Werte auf dem Display anzeigen lassen und vieles mehr. Und Toucheingaben meldet das Display an den µC zurück.
    Wenn du als Controller einen ESP32 verwendest, kannst du auch dessen WLAN-Fähigkeit nutzen, und den C128 per WLAN ein-/ausschalten. Die möglichen Spielereien sind viefältig.

    Oh, man kann hier unliebsame Nutzer blockieren. Wie praktisch!

    Einmal editiert, zuletzt von Gnom (9. August 2022 um 09:20)

  • Moinsen,

    nachdem das Mitglied Gnom auf eine recht unverschämte Art mir versucht hat auf dem Weg einer PM klar zu machen, daß nur seine Meinung zählt. Hier mal eine Auflösung.

    Warum sollte man denn keine Portepander verwenden ? Keine Ahnung wie der Typ auf diese Idee kommt ! Wenn wie ich annehme am C128 nur fast leistungslose Kleinspannungen geschaltet werden sollen, kann man das sehr bequem über einen Portexpander mit einem Kleinleistungstransistor, zudem sehr Strom- und Platzsparend umsetzen. Zudem wären die Schaltvorgänge 100% geräuschlos.
    Selbstverständlich kannst du auch Relais verwenden. Nur solltest du dir dann im klaren sein, das du bei dieser Anzahl an Relais eine zusätzliche Stromversorgung die nicht über das PI Netzteil bereit gestellt werden kann vorsehen mußt. Acht Relais über GPIO geschaltet, ist da eher das geringere Übel. Diese Relais benötigen auch Versorgungsspannung, die auf den üblichen Relais-Fertigplatinen über einen einfachen Kleinlasttransistor verstärkt, oder direkt von einem Optokoppler geschaltet werden. Nimmt man die Summe von 8 Relais in der Ausführung 5 V zusammen müßtest du eine Haltestrom von 8 mal bis 120mA in der Summe = 960mA über die 5 Volt Pins abziehen. Das würde das PI komplett überlasten. Dabei reden wir noch nicht von dem Anzugstrom, der Je nach Relaistyp pro Auslösevorgang einen Spitzenimpulsstrom von bis zu 370mA ( was ich jetzt in den verschiedenen Herstellerunterlagen gefunden habe ) pro Relais und Einschaltvorgang bis das Magnetfeld an der Spule stabil ist.
    Das bedeutet du müßtest eine zusätzliche Stromquelle in der Größe Relaisspannung installieren, die einen Spitzenstrom bis knapp 3A und einen Dauerstrom von mind. 1A dauerhaft liefern kann.

    Da deine Angaben zu diesem Gesamtprojekt ohne sehr dürftig , wenn nicht gar sehr sparsam bis zurückhaltend sind, will ich diese Methode mit den Relais keinesfalls in Abrede stellen. Dennoch gebe ich zu bedenken, daß Relais einen bedeutend höheren Strombedarf, und einen mit von den Schaltzyklen abhängige Lebensdauer haben.

    Zu deiner zweiten Frage, das wäre dahingehend denkbar solange das PI noch unter Strom ist, bedeutet falls du eine zentrale Ein- oder Zuschaltfunktion über dieses Touch Display umsetzen möchtest, und dabei auch das PI herunterfahren möchtest dann geht das nur, wenn das Display von einem eigenen Controller gesteuert wird. Das Pi darüber abschalten ja das geht ! Aber als Touch-Funktion PI wieder starten, wenn das Display von Pi angesteuert wird, das geht nicht ! Eigentlich wäre es auch irgendwie sinnfrei eine zentrales Power-ON über einen solchen Touchscreen umzusetzen.

    Franky

    Franky

  • Wozu man bei einem Pi mit ca. 20 GPIOs einen Portexpander braucht, um 8 Schalter zu ersetzen, ist immer noch in keiner Weise nachvollziehbar.

    Die üblichen 5-V-Relais haben einen Spulenstrom von 71,4 mA (nicht 120 mA - das sind die 3-V-Relais, du beziehst dich aber auf die 5-V-Relais). Insofern bist du bei unter 600 mA. Und die Einschaltströme sind nicht besonders relevant, wenn man nicht alle Relais exakt gleichzeitig einschaltet, was hier nicht zu erwarten ist.

    Nochmal: Die zweite Frage betrifft in keiner Weise das automatische Ein- oder Ausschalten des Pi. Offenbar hast du die Frage gar nicht verstanden.

    Da kann man womöglich trefflich drüber streiten, ob ich unverschämt bin oder du ahnungslos bist. Wenn du das Rumposaunen von Fehlinformationen und wirren Empfehlungen als Meinungsfreiheit bezeichnest, finde ich das schon etwas seltsam.

    Oh, man kann hier unliebsame Nutzer blockieren. Wie praktisch!

  • Vielen Dank für die Ehrerbietung.

    Du vergleichst Äpfel mit Birnen. Das Relais hat nicht die Funktion des Portexpanders. Einen Portexpander brauchst du, wenn du zu wenige GPIOs hast. Ein Relais KANNST du mit allen Vor- und Nachteilen mehr oder minder für die Schaltung jeglicher Lasten einsetzen (hohe oder niedrige Ströme, verschiedene Spannungen, Gleich oder Wechselstrom), musst du aber natürlich nicht - hab ich auch weder behauptet noch gefordert. Du kannst je nach Last und Stromart (auch das hab ich gesagt) mit Transitoren, Optokopplern, SSR oder ähnlichem Schalten. Und ja, du kannst auch den Eingang eines Gerätes (C128) direkt mit einem Ausgang des anderen (Pi) verbinden. Ich persönlich würde das allerdings eher vermeiden und einen Optokoppler vorziehen.
    Das einzige, was du da nicht brauchst, ist ein Portexpander. (Es sei denn, du hast nicht genügend GPIOs, aber davon war nie die Rede.)

    Und wer Bedenken wegen des Stromverbrauchs hat, könnte statt der Relais auch mal den Pi selbst in Frage stellen - der braucht nämlich auch schon ordentlich Strom. Ich hatte angeregt, einen µC statt des Pi zu verwenden. Dafür gibt es neben dem Stromverbrauch auch noch einige weitere gute Gründe.

    Und... ja, weiß ich: Der offizielle Raspberry 7" Touchscreen braucht neben der Stromversorgung genau 3 Pins. dazu 8 für die Taster macht 11. Bei 26 GPIOs an einem 3B+ bleiben immer noch 15 übrig. Wenn die dann nicht mehr reichen... dann kommt dein Port-Expander.

    Gelobt sei Adam Riese!

    Oh, man kann hier unliebsame Nutzer blockieren. Wie praktisch!

  • Wirklich Hilfreich sind die Romane für den TE hier sicher nicht,

    Wäre schöner wenn ihr euren Disput per PN klären würdet und jeder für sich hier dem TE eine Lösung anbietet.

    Just my 2ct.

    Offizieller Schmier und Schmutzfink des Forum.
    Warum einfach wenn's auch schwer geht ?

    Kein Support per PN !
    Fragen bitte hier im Forum stellen. So hat jeder etwas davon.

  • Was brauche ich an Hardware um zb 8 Kippschalter und Taster (Reset-Buttons) ersetzen?
    Kann ich dafür zb ein 8-Kanäle RelaisModul nutzen?

    NEIN oder JAIN natürlich kannst du potezialfrei mit dem Relais schalten, sehr von Vorteil wenn die beiden Beteiligten verschiedene Zielspannungen haben 3,3V vs. 5V !

    Wäre schöner wenn ihr euren Disput per PN klären würdet und jeder für sich hier dem TE eine Lösung anbietet.

    es wäre schöner, wenn alle nicht so einen technischen Unsinn schreiben würden wie:

    Relais brauchst du keine, daß ließe sich auch sehr elegant über sg Portexpander lösen. PCF8574, MCP23x17

    ein Portexpander vervielfacht nur Ports und ändert keineswegs die Zielspannung. Mit 3,3V vom PI 5V zu schalten geht nur mit OC open collector was ein PI und viele Porterweiterungen nicht haben! Was immer geht sind Photomos Relais solange man deren Spannungsgrenzen beachtet und auch die Ströme die man dem PI entnimmt!

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Moinsen jar

    wenn alle nicht so einen technischen Unsinn schreiben würden wie:

    Ich finde es sehr beschämend, wenn man nur Teilausschnitte zitiert !

    PCF8574, MCP23x17, MCP23x08, MCP23x18

    Hier in der Liste sind sehr wohl OpenCollector Portexpander enthalten ! Siehe MCP23018.

    Weiterhin hatte ich im Folgebeitrag auch eine Beschaltunsgvariante aufgeführt, die für fast jede zu schaltende Kleinspannung zutreffend ist !

    kann man das sehr bequem über einen Portexpander mit einem Kleinleistungstransistor, zudem sehr Strom- und Platzsparend umsetzen.

    Also wer schreibt hier Unsinn ?

    Zudem gab es im Eingangspost keinerlei Angaben um welche zu schaltenden Spannungen es sich bei diesem Projekt handelt !

    Falls du die göttliche Gabe hast, in dieser Kopie des Eingangsposts auch nur ansatzweise die Worte oder Abkürzungen Spannung oder V oder Volt zu finden, dann teile mir das bitte mit ! Oder kennzeichne diese Textpassagen bitte so, das diese hervorgehoben sind !

    Franky

    Franky

  • Hier in der Liste sind sehr wohl OpenCollector Portexpander enthalten ! Siehe MCP23018.

    und warum nennen die es dann open drain?

    ok wegen CMOS kann mir entgangen sein, aber immer noch gilt die Zielspannungen und Daten müssen passen.

    Was brauche ich an Hardware um zb 8 Kippschalter und Taster

    wobei er sich keineswegs über Spannungen auslässt, klar kann man 5V vermuten bei C128 aber man kann auch 230V~ vermuten für das Netzteil oder die Schreibtischlampe oder den Monitor :!:

    Von daher gebe ich doch keine Empfehlungen wie einen MCP irgendwas! :angel: :danke_ATDE: (open Collector oder open Drain egal)

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Moinsen jar,

    Dann lies mal bitte den Eingangspost sehr genau !
    Dazu sollte man wissen, daß im C128 nur die beiden Spannungen 9 V und 5 V verwendet werden, zudem wenn u.a. vom RESET des C128 gesprochen und geschrieben wird, kann man erst einmal davon ausgehen, daß hier keine größeren Spannungen geschaltet werden sollen. Das kann man bedauerlicher Weise überall nachlesen !
    Zudem was sollte man mit 8 Kanälen an einem C128 schon schalten wollen ? Wenn man damit den C128, den möglicher Weise Original Monitor, das / die Diskettenlaufwerke, oder ein serielles Port-Gerät wie Drucker , oder Modem Netzspannungsfrei schalten will, dann gehe ich eher davon aus, daß der TO so schlau ist dieses auch so zu benennen. Falls es sich im Schaltfunktionen am USER-Port oder für den Expansion Port handelt, kann man das sehr wohl alles über Kleinlast-Transistoren erledigen.

    Da deine Angaben zu diesem Gesamtprojekt ohne sehr dürftig , wenn nicht gar sehr sparsam bis zurückhaltend sind, will ich diese Methode mit den Relais keinesfalls in Abrede stellen.

    Diese Aussage habe ich, wenn du wirklich alles gelesen und nicht nur überflogen hättest auch getätigt.

    Einfach nur Text-Artikel schön klein zerstückeln, den Inhalt damit entfremden und dann irgendwelche Behauptungen aufstellen, daß scheint hier einigen Forenmitgliedern besonders gut zu liegen. Vor allem brauche ich kein Relais um ein Reset Taster an einem C128 zu ersetzen ! Das steht jedoch schon im EIngangspost des TO. Da würde auch direkt ein GPIO mit einem Kleinlast Transistor ausreichen.
    Und egal welche Art von Portexpandern man nutzen möchte, es ist kein Problem im mA Bereich damit bis zu 30 V zu schalten. Noch kann ich in keinem der Posts erkennen oder lesen um welche Schaltaufgaben es sich im spezialen handelt. Damit kann deine Annahme das es sich um Lastschaltfunktionen handeln würde genauso falsch sein wie meine Annahme das nur Kleinlasten, oder -spannungen geschaltet werden sollen.

    Deswegen schon eine Vorverurteilung abzugeben, ist nicht besonders elegant ! Wie Der_Imperator schon schrieb:

    jeder für sich hier dem TE eine Lösung anbietet.

    Franky

    Franky

  • Zudem was sollte man mit 8 Kanälen an einem C128 schon schalten wollen ?

    das weiss nur der TO, ich gewöhne mir langsam ab mir was auszudenken was der TO nicht im Mindesten dachte! :^^:

    Jedenfalls gibst du auch Lösungen an auf Grund deiner Gedanken unabhängig was der TO wirklich meinte!

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Mir ist nicht so richtig klar, was du vorhast... du willst 8 Kippschalter/Taster "per Touchdisplay bedienen"? Also, ich glaube, das kannst du nicht gemeint haben, auch wenn du es geschrieben hast.

    Naja, ich will die Kippschalter ersetzen und dann per RPi steuern.

    Bei 1. schreibst du, du willst die Schalter/Taster durch den Pi und das Touchdisplay ersetzen. Das kann ich mir eher vorstellen. Also keine physischan Schalter/Taster, sondern ein Touchdisplay, das die Schalter/Taster ersetzt...?

    Ganz genau.

    Einer dieser Taster ist offenbar der Resetknopf für den C128, die anderen, nehme ich an, sind mit der Hardware des C128 verbunden und du kannst damit irgendwas einstellen oder auslösen...

    Ja, einige Schalter und Buttons sind schon vorhanden.

    Zu 1: Der Pi hat genügend Ausgänge, um 8 Schalter abzubilden. Daür brauchst du keine Portexpander. Diese Empfehlung verstehe ich nicht.
    Du kannst Relais benutzen - ich finde, das Klicken der Relais hätte hier sogar einen gewissen Charme. Es geht aber auch mit Halbleiterschaltern aller Art (Optokoppler, Mosfets, SSR, ...) Da musst du natürlich je nachdem, was du genau schalten willst (Spannung/Strom), das passende Teil verwenden.

    Oh, ich hab gerade mal nachgezählt: Aktuell habe ich sogar 14!!! Schalter bzw Buttons :(
    Wenn ich denn alles an Hardware-Erweiterungen auch wirklich einbaue (Was der Plan ist).

    Zu 2: Übliche Relais und auch Halbleiterschalter behalten ihren Zustand (anders als ein physischer Schalter) nicht bei, wenn der Strom weg ist. Du müsstest in diesem Fall den Zustand (an/aus) in einem nichtflüchtigen Speicher ablegen und nach dem Neustart die Schaltzustände wiederherstellen.
    Alternativ könntest du bistabile Relais einsetzen. Die behalten ihren Zustand bei. Allerdings weißt du dann immer noch nicht, welchen Zustand sie gerade haben. Das müsstest du über Eingänge am Pi erfassen und die Software kann dann den richtigen Zustand auf dem Display anzeigen. Das Erfassen der bestehenden Schaltzustände musst du aber erst mal (hardwareseitig) realisieren - das geht, ist aber unter umständen etwas Getüftel. Die erste Variante ist daher vermutlich einfacher zu realisieren. Die zweite hat den Vorteil, dass die zuletzt vorgenommenen Schaltzustände sofort da sind, wenn der Pi gestartet wird. Es hängt jetzt ein wenig davon ab, ob du die Schaltzustände vor dem Start der beiden (Pi und C128) korrekt haben musst, oder ob der Pi sie nach dem Start noch einstellen kann oder ob der Pi erst startet und die Schaltzustände einstellt und dann den C128 startet...

    Zustand speichern ist nicht so wichtig, wäre halt nur schön gewesen und ein nettes Gimmick.

    Eine Empfehlung: Wenn du wirklich NUR ein Touchdisplay haben willst, das die Taster ersetzt und somit den C128 steuert und wenn der Pi sonst keine Funktionen hat, dann setzt du besser einen Microcontroller ein. Der Pi selbst ist für sowas erstens völlig überdimensioniert, zweitens zu anfällig, drittens zu langsam (Bootvorgang), viertens zu teuer...

    Ah, ja nee.. dafür fehlt mir aber leider definitiv das Know How :(
    Rpi würde ich noch hinbekommen zu programmieren und zu teuer? Hab ich hier schon liegen von einem anderen Projekt welches ich aber nicht mehr nutze.

    Deine Aufgabe läst sich besser mit einem Mikrocontroller lösen. Ein Pi Pico zum Beispiel oder ein Arduino Nano oder ein ESP32. Vorteil: Der µC ist zuverlässiger, preiswerter und schneller (damit meine ich, nach dem Einschalten sofort aktiv, er muss nicht erst langwierig ein Betriebssystem booten). Ein leistungsfähiger µC wie der ESP32 kann auch einfaches Touchdisplay ansteuern. Allderdings gibt es eine elegante und wesentlich einfachere Lösung, nämlich ein Display von Nextion. Die bekommen vorab deine Anzeigebilder programmiert und erhalten nur noch die Anzeigewerte per serieller Verbindung vom µC. Du kannst also deinen Schalter vorab "malen" und der µC sagt dem Display dann nur noch, ob es den Schalter als eingeschaltet oder ausgeschaltet darstellen soll. Du kannst dir auch Werte auf dem Display anzeigen lassen und vieles mehr. Und Toucheingaben meldet das Display an den µC zurück.
    Wenn du als Controller einen ESP32 verwendest, kannst du auch dessen WLAN-Fähigkeit nutzen, und den C128 per WLAN ein-/ausschalten. Die möglichen Spielereien sind viefältig.

    Ja, klingt sehr gut,aber da fehlt mir das Know Hot.

    Warum sollte man denn keine Portepander verwenden ? Keine Ahnung wie der Typ auf diese Idee kommt ! Wenn wie ich annehme am C128 nur fast leistungslose Kleinspannungen geschaltet werden sollen, kann man das sehr bequem über einen Portexpander mit einem Kleinleistungstransistor, zudem sehr Strom- und Platzsparend umsetzen. Zudem wären die Schaltvorgänge 100% geräuschlos.
    Selbstverständlich kannst du auch Relais verwenden. Nur solltest du dir dann im klaren sein, das du bei dieser Anzahl an Relais eine zusätzliche Stromversorgung die nicht über das PI Netzteil bereit gestellt werden kann vorsehen mußt. Acht Relais über GPIO geschaltet, ist da eher das geringere Übel. Diese Relais benötigen auch Versorgungsspannung, die auf den üblichen Relais-Fertigplatinen über einen einfachen Kleinlasttransistor verstärkt, oder direkt von einem Optokoppler geschaltet werden. Nimmt man die Summe von 8 Relais in der Ausführung 5 V zusammen müßtest du eine Haltestrom von 8 mal bis 120mA in der Summe = 960mA über die 5 Volt Pins abziehen. Das würde das PI komplett überlasten. Dabei reden wir noch nicht von dem Anzugstrom, der Je nach Relaistyp pro Auslösevorgang einen Spitzenimpulsstrom von bis zu 370mA ( was ich jetzt in den verschiedenen Herstellerunterlagen gefunden habe ) pro Relais und Einschaltvorgang bis das Magnetfeld an der Spule stabil ist.
    Das bedeutet du müßtest eine zusätzliche Stromquelle in der Größe Relaisspannung installieren, die einen Spitzenstrom bis knapp 3A und einen Dauerstrom von mind. 1A dauerhaft liefern kann.

    Naja, wenn ich nun 14 Schalter/Taster ersetzen will, komme ich um einem PortExpander wohl nicht rum, oder?

    Ok, ich bin am Anfang von 8 Schaltern ausgegangen, aber nun sind es doch ein paar mehr geworden.

    Da deine Angaben zu diesem Gesamtprojekt ohne sehr dürftig , wenn nicht gar sehr sparsam bis zurückhaltend sind, will ich diese Methode mit den Relais keinesfalls in Abrede stellen. Dennoch gebe ich zu bedenken, daß Relais einen bedeutend höheren Strombedarf, und einen mit von den Schaltzyklen abhängige Lebensdauer haben.

    Ah ok, wieder was gelernt.

    Zu deiner zweiten Frage, das wäre dahingehend denkbar solange das PI noch unter Strom ist, bedeutet falls du eine zentrale Ein- oder Zuschaltfunktion über dieses Touch Display umsetzen möchtest, und dabei auch das PI herunterfahren möchtest dann geht das nur, wenn das Display von einem eigenen Controller gesteuert wird. Das Pi darüber abschalten ja das geht ! Aber als Touch-Funktion PI wieder starten, wenn das Display von Pi angesteuert wird, das geht nicht ! Eigentlich wäre es auch irgendwie sinnfrei eine zentrales Power-ON über einen solchen Touchscreen umzusetzen.

    Ich würde den Rpi wohl extern über Strom versorgen.

    Und wer Bedenken wegen des Stromverbrauchs hat, könnte statt der Relais auch mal den Pi selbst in Frage stellen - der braucht nämlich auch schon ordentlich Strom. Ich hatte angeregt, einen µC statt des Pi zu verwenden. Dafür gibt es neben dem Stromverbrauch auch noch einige weitere gute Gründe.


    Und... ja, weiß ich: Der offizielle Raspberry 7" Touchscreen braucht neben der Stromversorgung genau 3 Pins. dazu 8 für die Taster macht 11. Bei 26 GPIOs an einem 3B+ bleiben immer noch 15 übrig. Wenn die dann nicht mehr reichen... dann kommt dein Port-Expander.

    Ja, wird wohl Port-Expander werden.

    So, das waren erst einmal die Antworten auf das sehr interessante Feedback bisher.

    Also ich fasse vielleicht besser noch einmal zusammen:
    Die Idee ist, die bereits vorhandenen Schalter (Aktuell 5 und einen Button) zu ersetzen und sogar zu erweitern (aktuell 12 Schalter und 2 Buttons) und dieses soll dann nachher via Touchdisplay steuerbar sein.

    So wie ich hier nun rausgelesen habe, ist die Lösung mit Relais gar nicht nötig, richtig?

    Aber um Port-Expander komme ich nicht rum, vor allem weil das Touchdisplay ja auch noch Anschlüsse am GPIO benötigt.


    Ein Relai brauche ich wohl doch für das ein-/ausschalten des C128, richtig?

  • Guten Morgen pcollins
    Mache einen Plan, oder eine ToDo Liste.
    Darauf wird ganz klar aufgeteilt, vor allem auch so benannt, was welcher virtuelle Button oder Schalter auf dem Touch was schalten soll. Dazu auch die Angabe welche Spannungen geschaltet oder ge-tastet werden sollen.
    Die hier schon genannten 16 Bit Portexpander MCP23017/230S17/MCP23018 und MCP23S18 verfügen über jeweils 16 I/Os.
    Das heißt, du kannst damit, auch gemischt 16 verschiedene Schaltfunktionen ausführen oder auch Eingaben elektronisch abfragen ( konventionelle Taster / Schalter ) . Der Unterschied bei diesen Expandern ist nur zu einem die Anschlussart, bzw. das verwendete Bus.Protokoll I2C oder SPI, und zum anderen die Spannungstoleranz gegenüber einer abweichenden Betriebsspannung. Da du aber nur Ausgänge schalten willst, ist es nicht zwingend erforderlich, auf diese Spannnungskompatibilität zu achten, da dieses von den nachgeschalteten Kleinlasttransistoren übernommen wird.
    Für alle Ausgänge die 220 Volt ~ schalten sollen, und wo hier auch noch die schönen alten und schweren noch mit Trafos aufgebauten Netzteile zum Einsatz kommen, solltest du auf Halbleiterrelais setzen. Für das andauernde Schalten von s.g. Induktiven Lasten sind die wenigsten in oder auf diesen Fertig-"Ready to Run" Platinchen verbauten Relais ausgelegt. Oder liegen dann in einem ähnlichen Preissegment wie diese Halbleiterrelais. -> Hier jetzt nur mal an die Langlebigkeit und dauerhafte Funktionssicherheit der Komponenten gedacht.
    Alles was schlussendlich unter 30 V Gleichspannung liegt lässt sich wie schon erwähnt mit einfachen nachgeschalteten Transistoren umsetzen. Egal ob es sich dabei um Bauformen im TO92 Gehäuse handelt, oder SMD Modell verwendet werden.
    Dennoch auch hier die Anmerkung - damit lassen sich keine all zu hohen Strome schalten. Deswegen hatte ich schon gesagt. Mache dir einen entsprechenden Aufbauplan.
    Auch diese Port Ausgänge der Portexpander können mehr oder minder direkt solche Relais Platinen ansteuern, auch Halbleiterrelais. Deswegen musst du jetzt nicht zwanghaft auf eine Mischbauweise GPIO-Ports des PI und der Portexpander setzen, wenn dir diese 16 I/O Ports zureichen. Notfalls kann man diese Portexpander auch mehrfach parallel schalten, so das du bis zu 8 x 16 zusätzliche GPIO Ports hättest. Diese Protexpander benötigen selber nur eine geringe Versorgungsspannung, die du problemlos aus dem 5 Volt des PI ( Pin 2 oder 4 ) über einen kleinen Spannungsregler wie den 2950-33 oder ähnliche Typen bereitstellen könntest. Wichtig dabei ist, falls du auf Levelshifter ( Pegelangleicher ) verzichten willst, dass die Spannungsversorgung dieser Expander ebenfalls mit 3,3 Volt erfolgt. Das kann man auf einer kleinen Platine selber zusammenbasteln. Da muss man nicht auf Fertigplatinen zurückgreifen, die wieder nur zusätzliches Kabel- und Strippengedöns hervorrufen würden.

    Ohne sauber Planung geht oder wird das nichts handfestes.

    PS: Falls dir im Laufe des Betriebs oder der Testphase noch weitere Zusatzfunktionen einfallen, wirst du ohnehin nicht Umweg kommen auf diese Portexpander zu setzen. Das erleichtert nicht nur die spätere Erweiterbarkeit sondern macht auch das gesamte Konzept von GNOM obsolet. Denn dann müsstest du mit einer kompletten Neuverkabelung, bzw. auf eine Mischbauweise setzen, die nicht nur die Programmierung unnötig verkompliziert, sondern auch einen massiven Eingriff in die schon bestehende Schaltung zur Folge hätte.
    Meine klare Positionierung dazu.
    Grundsätzlich den Weg vom PI über diese Portexpander umsetzen. Egal ob diese dann nachfolgend auch irgendwelche Relais, oder Halbleiterrelais für größere Lasten schalten oder nicht. Damit ist eine spätere Erweiterbarkeit problemlos und ohne Komplettumbauten möglich.

    es grüßt euer
    Willy

    2 Mal editiert, zuletzt von WillyR_aus_C (11. August 2022 um 07:32) aus folgendem Grund: Ergänzung

  • Für alle Ausgänge die 220 Volt ~ schalten sollen

    wo denn?

    Hier in Europa haben wir längst ein Verbundnetz mit 230V~ +-10%. Das sollte mal langsam angekommen sein!

    Zitat

    Die Umstellung von 220 Volt auf 230 Volt erfolgte ab 1987.

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Bei den -10% sind die 220V vom Willi aber noch dicke drin

    ach, [/LORIOT] und bei 230V~ +10%? da ist nur noch der Willi dicke drin mit einem möglicherweise gegrillten Relais für 250V. Das Datenblatt dieser Würfelrelais lässt ja keinen Zweifel offen was seine natürlichen Grenzen sind und das Layout hält nun mal nicht die gewünschten Sicherheitsabstände für UNSERE Netzspannung ein. Das wurde schon so oft hier geschrieben, warum glauben immer wieder neue User das hier wieder thematisieren zu müssen? Das wird so langweilig.

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Guten Tag jar,

    Ich hatte auch geschrieben das die wenigsten dieser Ready-to-Run Platinchen dafür ausgelegt sind. Und eine ganz andere Empfehlung gemacht. Damit muss man wohl nicht darüber streiten ob 220 oder 230 Volt ? Bei Halbleiterrelais dürfte wenn das Projekt noch in der Planungsphase ist, es ohnehin nicht dazu kommen, dass falsch dimensionierte SSR (Solid State Relais) zum Einsatz kommen !? ;)

    es grüßt euer
    Willy

  • Damit muss man wohl nicht darüber streiten ob 220 oder 230 Volt ?

    man muss keineswegs darüber streiten aber auch die 220V mal aus dem Kopf schmeissen nach über 30 Jahren :danke_ATDE:

    Man kann nur durch Wiederholung lernen und wenn das nicht täglich gemacht wird haben wir wieder 110V :baeh2:

    Es sind hier 230V~ :!:

    Es sind hier 230V~ :!:

    Es sind hier 230V~ :!:

    Es sind hier 230V~ :!:

    Es sind hier 230V~ :!:

    Es sind hier 230V~ :!:

    Es sind hier 230V~ :!:

    Es sind hier 230V~ :!:

    Es sind hier 230V~ :!:

    Es sind hier 230V~ :!:

    Es sind hier 230V~ :!:

    Es sind hier 230V~ :!:

    hier ist das europäische Verbundnetz!

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!