Maschinenschaltung - Elektroniker wo seit ihr?

Diskutiere Maschinenschaltung - Elektroniker wo seit ihr? im Reparatur und Wartung Forum im Bereich Fragen und Tipps; AW: Maschinenschaltung - Elektroniker wo seit ihr? Hab die Relaiskarte jetzt auch mal bestellt. 5V 8 Channel Relay Shield for Arduino Ist doch...

  1. #101 gunnar0815, 25.07.2011
    gunnar0815

    gunnar0815 Mitglied

    Dabei seit:
    17.08.2005
    Beiträge:
    15.404
    Zustimmungen:
    1.026
    AW: Maschinenschaltung - Elektroniker wo seit ihr?

    Hab die Relaiskarte jetzt auch mal bestellt.
    5V 8 Channel Relay Shield for Arduino
    Ist doch eine verdammte Bastelei Die LEDs und Widerstände müsste ich auch noch anlöten.
    Das Löten ist auch garantiert nicht Massentauglich. Außerdem sollte man mit 220 V vernünftig umgehen. Bei meiner Platine liegt 220V und 5V finde ich zu dicht zusammen.
    Ist mir so sicherer.

    Gunnar
     
  2. #102 gunnar0815, 18.08.2011
    gunnar0815

    gunnar0815 Mitglied

    Dabei seit:
    17.08.2005
    Beiträge:
    15.404
    Zustimmungen:
    1.026
    AW: Maschinenschaltung - Elektroniker wo seit ihr?

    @blu bin noch dabei war nur im Urlaub.
    Wie viel Strom fressen die Relais eigentlich. Bzw. wie viel A brauch das 5V Netzgerät.
    Hab da bisher noch nichts gefunden. Die anderen haben glaube ich 350 mA gezogen gab aber auch welche die über 500 mA gezogen haben.
    Gunnar
     
  3. Phenyl

    Phenyl Mitglied

    Dabei seit:
    25.03.2012
    Beiträge:
    662
    Zustimmungen:
    850
    AW: Maschinenschaltung - Elektroniker wo seit ihr?

    Hallo, ein sehr interessanter thread, bin gerade mit dem Lesen durch. Haben sie eventuell Schaltplan/Bestückungsliste/Software des Shottimers noch irgendwo, da ich so einen auch gerne nachbauen würde

    Wie wird denn der Microcontroller programmiert? Braucht man dazu noch eine Platine mit Logik oder tut es so etwas: Play-Zone.CH USBTinyISP AVR-ISP-Programmer USB

    Vielen Dank im Voraus

    Eine Steuerung der Junior per Arduino kann ich mir ja mal als mittelfristiges Projekt vormerken :)


     
  4. Phenyl

    Phenyl Mitglied

    Dabei seit:
    25.03.2012
    Beiträge:
    662
    Zustimmungen:
    850
    AW: Maschinenschaltung - Elektroniker wo seit ihr?

    Hallo,

    da ich nun schon knappe zwei Monate auf meinen Kessel und die Dichtungen warte und von einem Kollegen das Arduino Uno Board zum rumspielen ausgeliehen bekommen habe, habe ich begonnen, blu und Gunnar0815's Shottimer nachzubauen.
    Dazu habe ich noch die eine oder andere Frage..
    Die Siebensegmentanzeigen sollten nach den Angaben im Thread ja mit gemeinsamen Kathoden sein, auf
    [​IMG]
    und bei den Verbindungen auf die Steckbrücken hier
    [​IMG]
    sieht es jedoch so aus, als ob der Pluspol, also die Anode gemeinsam beschaltet ist.
    Soll ich mir wohl der Einfachheit halber Siebensegmentanzeigen mit gemeinsamer Anode holen oder kann die Schaltung leicht auf gemeinsame Kathode geändert werden?

    Da meine Cimbali Junior keine Möglichkeit zur Präinfusion besitzt (und ich die Mengendosierung entfernen werde) wollte ich den Bezug einfach über einen Ein/Ausschalter manuell steuern.
    Ist es möglich einen Pin (5) des Arduinos an einen freie Anschluss des Schalters (oder ein Relais das parallel zu Pumpe und Magnetventil ein/ausgeschaltet wird) zu hängen und das Programm so zu ändern, dass der Timer auf 0 gesetzt wird, wenn dieser Eingang auf Masse gezogen wird und dann hochzuzählen, bis der Stromkreis wieder unterbrochen ist?

    Welches Programm habt Ihr verwendet, um die Verdrahtungen auf dem Steckbrett oder den Platinen zu zeichnen?

    Hier der Fortschritt auf der Platine:
    [​IMG]

    [​IMG]



    Vielen Dank für Eure Hilfe.
     
  5. blu

    blu Mitglied

    Dabei seit:
    15.11.2004
    Beiträge:
    9.691
    Zustimmungen:
    6.725
    AW: Maschinenschaltung - Elektroniker wo seit ihr?

    Hi,
    ist sehr einfach zu ändern. Einfach die mittleren Pins der 7-Segment-Anzeigen mit GND verbinden. Damit wären allerdings die falschen LEDs an, d.h. die Zahlen wären dunkel. Einfach die umgekehrten LEDs ("Negativ") anschalten.
    Aus meiner Erfahrung ist folgendes geschickt: Der Timer wird MIT der Präinfusion gestartet und läuft beim Bezugsstart einfach weiter. Die Variante Neustart des Timers mit Pumpenstart ist natürlich ebenso problemlos realisierbar.
    Bei meiner Ex-Cimbali (es war jedoch ein neueres Modell) hatte ich mal das Signal des Brühgruppen-EMV auslesen wollen. Da war das Problem, dass komischer Weise stromlos auch knapp 30 V anlagen und das Relais dann gebrummt hat. Muss man sich dann im Detail ansehen, die Tage mehr.
    fritzing finde ich richtig cool (der Kaffeetimer ist mittlerweile als Beispiel mit an board; ich habe aber mit den Jungs sonst nichts am Hut).
     
  6. Phenyl

    Phenyl Mitglied

    Dabei seit:
    25.03.2012
    Beiträge:
    662
    Zustimmungen:
    850
    AW: Maschinenschaltung - Elektroniker wo seit ihr?

    Hi blu,

    vielen Dank für die Informationen. Ich habe heute die Schaltung fertig gelötet und verbunden, und sie funktioniert. Die nächste werde ich schöner aufbauen, aber nach ein paar Jahren weg vom Lötkolben bin ich fürs erste glücklich. Interessanterweise hat das Zählen direkt funktioniert, ich musste die LEDs im Code nicht invertieren.
    Zu weiteren Hinweisen für die Cimbali wäre ich dankbar. Vielen Dank auch für den Hinweis auf Fritzing, das scheint mir nach einem ersten kleinen Test wirklich sehr gut gemacht.

    Hier mein Aufbau im Moment, würde schöner aussehen, hätte ich Lötbuchsen und Stecker gefunden :oops:
    Pio


    [​IMG]

    [​IMG]
     
  7. Phenyl

    Phenyl Mitglied

    Dabei seit:
    25.03.2012
    Beiträge:
    662
    Zustimmungen:
    850
    AW: Maschinenschaltung - Elektroniker wo seit ihr?

    Hier meine zweite Version der Platine, dieses Mal mit Lötbuchsen ausgeführt. Den Stecker zu verkabeln war eine Geduldsprobe, war aber nach den ersten paar Anschlüssen gut machbar.
    Die Kingbright SC56-11SRWA Siebensegmentanzeigen (auch wieder common cathode) sind mit 10 mA sehr hell, besser als das Element welches ich in der letzten Version verbaut habe. Die zwei 10 kOhm Pull up-Widerstände für die Start-/Stopp-Taster sind über der oberen Steckbuchse, ebenso der Vorwiderstand für das SSR für Pumpe/Magnetventil.
    Für die Steuerung habe ich blu's Programm ein wenig modifiziert und all die Arduino Ein- und Ausgänge auf Ports 8-13 gelegt. Der Pumpenausgang auf Port 13 wird bei mir momentan mit der ersten Betätigung des Starttasters gestartet und mit dem Stopptaster gestoppt, da ich (noch) keine Möglichkeit zur Präinfusion vorgesehen habe.


    Vielen Dank an alle im Thread für Eure Ideen, Anleitungen und Inspiration!


    [​IMG]
    Da ich noch nicht sicher bin, ob ich noch andere Funktionen auf das Board nehmen will (welche?) habe ich es noch nicht vom grossen PCB getrennt.

    [​IMG]
    Der selbstgelötete Winkelstecker in den Lötbuchsen.


    Code:
    
    
    /*
      Chronofunktion für die Kaffeemaschine:
     Die Bezugsdauer soll gemessen und auf zwei 7-Segment-Anzeigen dargestellt werden.
     21.06.2011 by blu, modifiziert durch phenyl
     
     TODO:
     -> Interrupt vom rechten Taster auslösen lassen, um die Uhr zu stoppen
     -> Taster entprellen
     -> Relais und Pumpe ansteuern
     
     */
    
    // Benutze den Timer-Interrupt: http://www.arduino.cc/playground/Main/MsTimer2
    #include <MsTimer2.h>
    // Die Bounce-Bibliothek zum Entprellen verwenden, siehe http://www.arduino.cc/playground/Code/Bounce
    #include <Bounce.h>
    
    // Zum Debuggen auf 1 setzen und auf den "serial monitor" klicken:
    const int DEBUG = 1;
    
    // shift register:
    const int latchPin = 9; 
    const int dataPin = 8; 
    const int clockPin = 10; 
    
    // Pushbuttons
    const int leftButton = 11; // Preinfusion bzw. Bezug starten
    const int rightButton = 12; // Bezug stoppen
    
    int leftButtonState = 0; // ist der linke Button akutell gedrückt?
    int leftButtonLastState = 0; // wie war der letzte Zustand vom linken Button?
    
    int rightButtonState = 0; // ist der rechte Button akutell gedrückt?
    
    // Bounce-Objekt für den leftButton instanziieren. Die Entprellzeit beträgt 50 ms
    Bounce bouncerLeft = Bounce(leftButton,50); 
    Bounce bouncerRight = Bounce(rightButton,50); 
    
    int seconds = 0; // "Uhrzeit" in Sekunden (wird durch Interrupt verändert)
    
    /*
    7-Segment-Display:
     a-7  <-> Q0
     b-6  <-> Q1
     c-4  <-> Q2
     d-2  <-> Q3
     e-1  <-> Q4
     f-9  <-> Q5
     g-10 <-> Q6 
     dp-5 <-> Q7 nicht in Benutzung
     
     Darstellung der Einer-Ziffern:
     0:   f+e+d+c+b+a = 63
     1:         c+b   = 0*2^7 + 0*2^6 + 0*2^5 + 0*2^4 + 0*2^3 + 1^*2^2 + 1*2^1 +0*2^0 = 00000110b = 6
     2: g+  e+d+  b+a = 91
     3: g+    d+c+b+a = 79
     4: g+f+    c+b   = 102
     5: g+f+  d+c+  a = 109
     6: g+f+e+d+c+  a = 125
     7:         c+b+a = 7
     8: g+f+e+d+c+b+a = 127 
     9: g+f+  d+c+b+a = 111
     
     Array:
     Der Inhalt von z.B. numbers[1] enhält die Information, welche LED's eingeschaltet werden müssen, damit die 1 aufleuchtet.
     */
    int numbers[10] = {
      63, 6, 91, 79, 102, 109, 125, 7, 127, 111};
    
    // Relais für:
    const int pump = 13;
    /*const int solenoid = 13;*/
    
    int pumpState = 0;
    
    
    void setup()
    {
      if(DEBUG){
        Serial.begin(9600); // serielle Schnittstelle für's Debuggen aktivieren
      }
    
      pinMode(latchPin, OUTPUT);
      pinMode(clockPin, OUTPUT);
      pinMode(dataPin, OUTPUT);
      pinMode(pump, OUTPUT);
    
      pinMode(leftButton, INPUT);
      pinMode(rightButton, INPUT);
    
      clearDisplays(); // 7-Segment-Anzeigen aus
      delay(100);
      alleAn(); // LED-Test
      delay(500);
      clearDisplays();
      sayHello();
      clearDisplays(); // 7-Segment-Anzeigen aus
      alleAn(); // LED-Test
      delay(1000);
    
      // Alle 1000 ms wird ein Interrupt ausgelöst
      MsTimer2::set(1000, zeitLaeuft); // Methode SekundeErhoehen aufrufen 
    
    }
    
    void loop()
    {
      // 
      bouncerLeft.update();
      leftButtonState = bouncerLeft.read();
      //leftButtonState = digitalRead(leftButton);
    
      if(DEBUG && leftButtonState && bouncerLeft.duration() > 100 == 1){
        Serial.print("letzer und aktueller Zustand des linken Buttons:  ");
        Serial.print(leftButtonLastState);
        Serial.print("   ");
        Serial.println(leftButtonState);
        Serial.println("------------------------------------------------");
      }
    
      if(leftButtonState == 1 && bouncerLeft.duration() > 100 && leftButtonLastState == 0){
        seconds = 0;
        startClock();
        digitalWrite(pump, HIGH);
        leftButtonLastState++;
      } 
      else if (leftButtonState == 1 && bouncerLeft.duration() > 100 && leftButtonLastState == 1){
        stopClock();
        leftButtonLastState++;
        seconds = 0;
        startClock();    
      }
    
      bouncerRight.update();
      if(bouncerRight.read() && bouncerRight.duration() > 100){
        rightButtonState = 1;
      } 
      else {
        rightButtonState = 0;
      }
    
      if(rightButtonState){
        stopClock();
        digitalWrite(pump, LOW);
        leftButtonLastState = 0;
        if(DEBUG){
          Serial.println("Rechts wurde geklickt!");
          Serial.print("Letzter Zustand des linken Buttons:  ");
          Serial.println(leftButtonLastState);
          Serial.println("|||||||||||||||||STOP||||||||||||||||||||||||||");
        }
      }
      showTime();
    
    }
    
    // Die abgelaufende Zeit wird angezeigt
    void showTime(){
    
      // if(DEBUG){
      //      Serial.print("Die Einerstelle ist: ");
      //      Serial.println(int(seconds%10), DEC);
      //      Serial.print("Die Zehnerstelle ist: ");
      //      Serial.println(int(seconds/10), DEC);
      //      Serial.println("-----------------------------------");
      //    }  
      zahlAusgeben(int(seconds/10),int(seconds%10));
    }
    
    
    // beide 7-Segment-Anzeigen dunkel schalten
    void clearDisplays(){
      digitalWrite(latchPin, LOW);
      shiftOut(dataPin, clockPin, LSBFIRST, 0); // Anzeige löschen
      shiftOut(dataPin, clockPin, LSBFIRST, 0); // gelöschte Anzeige nach rechts weiterreichen und linke Anzeige löschen
      digitalWrite(latchPin, HIGH);
    }
    
    // Funktionstest 7-Segment-Anzeigen
    void alleAn(){
      zahlAusgeben(8,8);
    }
    
    // Ein paar lustige Kreise auf den Anzeigen drehen lassen:
    void sayHello(){
      int pause = 100;
      for(int a = 0;a<3;a++){
        digitalWrite(latchPin, LOW);
        shiftOut(dataPin, clockPin, MSBFIRST,1);
        digitalWrite(latchPin, HIGH);
        delay(pause); 
        digitalWrite(latchPin, LOW);
        shiftOut(dataPin, clockPin, MSBFIRST,0);
        digitalWrite(latchPin, HIGH);
        delay(pause); 
        for(int i =1;i<4;i++){
          digitalWrite(latchPin, LOW);
          shiftOut(dataPin, clockPin, MSBFIRST,int(0.01+pow(2,i)));
          shiftOut(dataPin, clockPin, MSBFIRST,0);
          digitalWrite(latchPin, HIGH);
          delay(pause); 
        }
        for(int i =3;i<6;i++){
          digitalWrite(latchPin, LOW);
          shiftOut(dataPin, clockPin, MSBFIRST,0);
          shiftOut(dataPin, clockPin, MSBFIRST,int(0.1+pow(2,i)));
          digitalWrite(latchPin, HIGH);
          delay(pause); 
        }
        clearDisplays();  
      }
    }
    
    // gibt die 10er- und 1er-Stelle auf den Displays aus
    void zahlAusgeben(int zehner, int einer){
      digitalWrite(latchPin, LOW);
      shiftOut(dataPin, clockPin, MSBFIRST, numbers[einer]); // Einer-Ziffer übertragen, wird im nächsten Schritt nach rechts geschoben
      shiftOut(dataPin, clockPin, MSBFIRST, numbers[zehner]); // Zehner links ausgeben und die Einerziffer zum 2. '595er nach rechts verschieben
      digitalWrite(latchPin, HIGH);
    }
    
    // Die Stoppuhr wird gestartet:
    void startClock(){
      MsTimer2::start(); // enable Interrupt
      if(DEBUG) Serial.println("Ich habe den Timer gestartet!");
    }
    
    // Die Stoppuhr wird gestoppt:
    void stopClock(){
      MsTimer2::stop(); // disable Interrupt
      if(DEBUG) Serial.println("Ich habe den Timer gestoppt!");
    }
    
    // Beim Auslösen des Timer-Interrupts wird die Sekundenzahl erhöht:
    void zeitLaeuft(){
      seconds++;
      if(DEBUG){
        Serial.println("+++++++++++++++Uhrzeit:+++++++++++++++++");
        Serial.println(seconds);
      }
    }
    
    
     
  8. #108 W1cht3lm@nn, 20.08.2012
    W1cht3lm@nn

    W1cht3lm@nn Mitglied

    Dabei seit:
    10.07.2008
    Beiträge:
    1.720
    Zustimmungen:
    67
    AW: Maschinenschaltung - Elektroniker wo seit ihr?

    Wozu? Im Atmel sind doch schon welche drin, die wollen bloß eingeschaltet werden...

    Siehe ggf. hier, vierter Absatz: Arduino - DigitalPins

    Ansonsten: Schönes Ding!
     
  9. #109 gunnar0815, 20.08.2012
    gunnar0815

    gunnar0815 Mitglied

    Dabei seit:
    17.08.2005
    Beiträge:
    15.404
    Zustimmungen:
    1.026
    AW: Maschinenschaltung - Elektroniker wo seit ihr?

    Ha super das es hier weiter geht.
    Kann leider nicht allzu viel beitragen.
    Werde auch erst mal die UNICs so manuell Aufbauen das sie funktionieren und dann wenn ich wieder Lust habe die Elektronik erweitern.

    Gunnar
     
  10. Phenyl

    Phenyl Mitglied

    Dabei seit:
    25.03.2012
    Beiträge:
    662
    Zustimmungen:
    850
    AW: Maschinenschaltung - Elektroniker wo seit ihr?

    Hallo W1cht3lm@nn,

    vielen Dank für den Hinweis, ich bin gerade am Versuchen, den Code darauf umzustellen, werde bei Erfolg posten.

    Eine Frage hat sich bei mir dann noch ergeben:
    Im Moment habe ich das Board, wie in den Fotos gezeigt, über Drahtbrücken mit dem Arduino Board verbunden. Dabei ist mir (unbemerkt) das 5 V Kabel abgefallen und die Siebensegmentanzeigen funktionierten munter weiter, wohl mit etwas verminderter Helligkeit, was ich aber erst im direkten Vergleich gesehen habe, als ich die 5V Leitung wieder eingesteckt habe.

    Nach Durchgehen der Arduino Dokumentation ( Arduino - DigitalPins ) sollte ein Pin maximal 40 mA bereit stellen.
    Deshalb sollte man in der Schaltung zwischen den Arduino und das Schieberegister wohl noch Vorwiderstände einbauen.
    (An alle Pins; Latch, Clock und Data?)

    Allerdings werde ich aus den 74HC595 Datenblättern http://www.sparkfun.com/datasheets/IC/SN74HC595.pdf nun nicht ganz schlau, bei welchen Strömen die noch zuverlässig schalten. Wenn der Arduino 5 V liefert und über den 595er (der Einfachheit halber) 1V abfällt, würden die in Arduino - DigitalPins vorgeschlagenen 1000 oder 470 Ohm Vorwiderstände den Strom auf 4 mA bis 8.5 mA begrenzen, was wohl definitiv sicher sein für den Arduino sein dürfte.

    Wenn "Low Input Current of 1 microA max" vom 595 Datenblatt den Schaltstrom bezeichnet, könnte man ja sogar 1-10 Megaohm Widerstände verbauen?
    Reicht der Strom aber noch fürs Schieberegister?

    Gruss,

    Pio

    P.S.
    Eine vom Schieberegister angesteuerter 7-Segment-Anzeige maximal (total) 70 mA konsumieren (also ohne Dezimalpunkt max 10 mA pro LED, auch ein Grund, dass ich das Teil nochmal gebastelt habe, vorher waren's 20.

    "Continuous current through Vcc or GND: ± 70 mA"
     
  11. blu

    blu Mitglied

    Dabei seit:
    15.11.2004
    Beiträge:
    9.691
    Zustimmungen:
    6.725
    AW: Maschinenschaltung - Elektroniker wo seit ihr?

    Hi,
    nur auf die Schnelle: Schau' mal auf meine Homepage, dort die Arduinoseite, da habe ich mit fritzing ein Layout für den Timer erstellt.
    Bald mehr, bin gerade im Urlaub und jetzt gerade am Smartphone.
    LG blu
     
  12. #112 W1cht3lm@nn, 22.08.2012
    W1cht3lm@nn

    W1cht3lm@nn Mitglied

    Dabei seit:
    10.07.2008
    Beiträge:
    1.720
    Zustimmungen:
    67
    AW: Maschinenschaltung - Elektroniker wo seit ihr?

    Die Umstellung sind 2 Zeilen nach folgendem Muster. Stört auch nicht wenn die "echten" pullups zusätzlich drin sind.

    digitalWrite(leftButton, HIGH);

    Der LED-Strom wird bereits durch deine vorhandenen Widerstände korrekt begrenzt.
    Dass die Anzeige auch "Ohne Versorgungsspannung" läuft, liegt an eingebauten Schutzdioden in den Schieberegistern. In dem Fall floss wirklich der Betriebsstrom über die Datenleitungen, aber keinesfalls mehr als für die LEDs zulässig ist.

    Vorwiderstände zwischen Arduino und Schieberegister sind unnötig. Es handelt sich nur um Datenleitungen, da muss nichts begrenzt werden.
    Die Versorgungsspannung sollte aber dran sein für zuverlässigen Betrieb mit konstanter Helligkeit. :)
     
  13. Phenyl

    Phenyl Mitglied

    Dabei seit:
    25.03.2012
    Beiträge:
    662
    Zustimmungen:
    850
    AW: Maschinenschaltung - Elektroniker wo seit ihr?

    Hallo Blu, W1cht3lm@ann,

    vielen Dank für die Antworten. Ja, aus dem Thread und von der Seite habe ich das.

    Mit " digitalWrite(leftButton, HIGH); " habe ich angefangen, jedoch :oops: habe ich die pull-X weiter oben verwechselt :oops: , die extern eingelöteten Widerstände sind zwei pull DOWN Widerstände, d.h. die Schalter-Logik ist invertiert, _dafür_ muss ich noch durch den Code und Nullen und Einsen tauschen, sobald mir Sohnemann etwas Zeit lässt.

    Ich hatte mir wegen dem "LED Betrieb über die Datenleitungen" mehr Sorgen um den Arduino gemacht, als um die LEDs, und werde jeweils verifizieren, dass die Betriebsspannung immer dran ist.

    Ich muss mir eine gute Einführung in die Elektronik zulegen, wenn ich hier weiter dilettieren möchte, dann erledigen sich zumindest (grobe) Anfängerschnitzer :)

    Vielen Dank für Eure Hilfe!

    Pio
     
  14. #114 W1cht3lm@nn, 23.08.2012
    W1cht3lm@nn

    W1cht3lm@nn Mitglied

    Dabei seit:
    10.07.2008
    Beiträge:
    1.720
    Zustimmungen:
    67
    AW: Maschinenschaltung - Elektroniker wo seit ihr?

    Grundsätzlich hast du da gar keine Schnitzer eingebaut soweit...nur evtl. nicht auf Anhieb den kürzesten Weg gefunden.

    Die von dir erwähnten Widerstände sind tatsächlich "gute Praxis", sie helfen z.B. auch gegen Rückwirkungen von angeschlossenen langen Leitungen (wenn man sie passend auslegt...da wirds haarig wenn es drauf ankommt).
    Bei solch unproblematischer Technik wie dieser LED-Anzeige braucht man sich aber wirklich keine Sorgen machen.

    Aus Erfahrung mit einigen mehr oder weniger pfuschigen AVR-basteleien über die letzten 10 Jahre kann ich dir versichern dass die Chips sehr robust und die Angaben im Datenblatt konservativ gehalten sind.
    Die maximalen Stromangaben sind hauptsächlich dafür wichtig dass der Pin überhaupt noch die definierten Pegel erreicht, statt unter der Last zusammenzubrechen sodass gar keine Spannung mehr herauskommt.
    Ich habe schon Ausgänge über Stunden auf Dauerkurzschluss gehabt oder auch mal einen AVR mit einem fälschlich gelieferten 6V-Spannungsregler betrieben (als 7805 bestellt und laut Tütchenbeschriftung auch erhalten...), bis ich dadurch stutzig wurde dass die serielle Kommunikation immer nach 10 Minuten abbrach und dann merkte dass er heftig warm wurde.

    Alle diese Teile funktionieren heute noch.

    Und Taster mit positiver Logik und dem entsprechenden Pulldown-Widerständen kann man problemlos machen, funktioniert ja gut.
    Andersrum spart es eben den Zusatzwiderstand. Und mit dem Gedankenknoten kann man sich irgendwann mal anfreunden, dazu ist die Negativlogik gängig genug.
     
  15. Phenyl

    Phenyl Mitglied

    Dabei seit:
    25.03.2012
    Beiträge:
    662
    Zustimmungen:
    850
    So, wieder einmal etwas für den Elektronikthread... Nachdem ich jetzt ein paar mehr kleinere und grössere Projekte hinter mir habe, habe ich eine Platine mit einem Atmega328P und zwei Schieberegistern gelayoutet. Ein Freund hat sie für mich belichtet, und dann habe ich sie bestückt.
    Es sind wie auf der vorigen Version Anschlüsse für eine Start-, eine Stopp, eine Reset-Taste, ein SSR, zwei Siebensegmentanzeigen sowie ein serieller und ein SPI-Programmingheader drauf. Mit der Anzahl benutzter Pins hätte es eigentlich auch ein kleinerer AtTiny getan, aber ich hatte noch ein paar 328er rumliegen.
    Ich bin gerade daran, die Cimbali schöner neu zu verkabeln, somit konnte ich das Arduino-Board und das Protoboard durch eine Platine ersetzen.

    [​IMG]

    [​IMG]
     
    mamu, blu und gunnar0815 gefällt das.
  16. 'Ingo

    'Ingo Mitglied

    Dabei seit:
    21.01.2006
    Beiträge:
    5.770
    Zustimmungen:
    2.544
    Der schaut böse aus, auch wenn Stopplack dazwischen ist
    http://screencast.com/t/d72CCNq2s
     
  17. Phenyl

    Phenyl Mitglied

    Dabei seit:
    25.03.2012
    Beiträge:
    662
    Zustimmungen:
    850
    Vielen Dank, ja das lag oben drauf. Bin mit dem Lötkolben kurz drüber, nun ist es sauber.
     
Thema:

Maschinenschaltung - Elektroniker wo seit ihr?

Die Seite wird geladen...

Maschinenschaltung - Elektroniker wo seit ihr? - Ähnliche Themen

  1. Elektriker/Elektroniker im Raum Berlin/Brandenburg gesucht

    Elektriker/Elektroniker im Raum Berlin/Brandenburg gesucht: Ich bin auf der Suche nach Unterstützung beim richtigen Verkabeln einer kleineren Espressomaschine (keine Gastromaschine). Ich habe von allen...
  2. Für die Elektroniker: Raspberry Pi klingt doch schon nach Raspberry PID

    Für die Elektroniker: Raspberry Pi klingt doch schon nach Raspberry PID: Hallo, da es ja schon Bestrebungen mit Adruino gibt, hab ich mal gegoogelt und festgestellt, dass die Bierleute innovativer sind (vermutlich weil...
  3. Elektroniker bitte um eure Hilfe, suche Relais

    Elektroniker bitte um eure Hilfe, suche Relais: Hallo! Wie in meinem anderen Tread beschrieben, hab ich bei meiner Carimali Uno ein Problem mit dem Magnetventil an der Brühgruppe. Habe nun das...
  4. Elektroniker wo seit ihr?

    Elektroniker wo seit ihr?: Elektroniker wo seit ihr? Hab jetzt ja meine Stark mit einem Timer (Zeitrelais) ausgestattet. Funktioniert alles bestens. Durch eine...
  5. HILFE! Mühle kaputt! Frage an die Elektroniker!

    HILFE! Mühle kaputt! Frage an die Elektroniker!: Servus! gerade ebend hat es in meiner Iberital Challenge geknallt. Danach ging nichts mehr! Habe sie aufgeschraubt und Prompt einen defekten...