Bastelcmd

Aus LaborWiki
Version vom 11. November 2019, 02:24 Uhr von Fridtjof (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche
         
Bastelcmd

Release status: stable [box doku]

Lapnode front.jpg
Description Labnode im Bastelraum
Author(s)  Tixiv
Last Version  V1.0 ()
Platform  AVR (ATmega32/64)
Download  Software: SVN browse




Bastelcmd steuert das Licht und die Drucker im Bastelraum. Angeschlossen sind des Weiteren noch 2 Bewegungsmelder zur Aktivitätserkennung.

Bastelcmd besteht aus einer Labnode, die mit dem CANbus verbunden ist und auf Adresse 0xa9 hört. Auf dem Labnode werkelt ein Atmega644 mit 20MHz Takt.

Pinbelegung (unvollständig, bitte ergänzen!):

Labnode Port AVR Pin Funktion
EXT1 PA0 (ADC0) Bewegungsmelder 1
PA1 (ADC1) Bewegungsmelder 2

Bewegungsmelder Testbetrieb

Die Bewegungsmelder sind jetzt aktiv und messen Bewegung im Bastelraum. Wenn nach einer Zeit von 8 Minuten keine Bewegung registriert wird, schaltet sich das Licht für ca. 5 Sekunden kurz aus und danach gleich wieder auf den alten Zustand zurück. Wird nach dieser "warnung" innerhalb von 2 Minuten keine weitere Bewegung gemessen, wird das Licht permanent aus geschaltet (bis das Nächste mal jemand den Schalter betätigt).

CAN Schnittstelle

Any Device -> Bastelcmd

  • CAN Adresse: 0xa9
  • CAN port: 0x01
  • CAN data[0] = {0: Switch, 1: PWM}
    • data[0]==0:
      • CAN data[1] = {1: F_REG_DRUCKER_1, 2: F_REG_DRUCKER_2, 3: F_REG_HELMER_1, 4: F_REG_HELMER_2, 5: F_REG_FENSTER, 6: F_REG_BANNER, 7: F_REG_ORGATISCH}
      • CAN data[2] = {0: Aus, 1: An}
    • data[0]==1:
      • CAN data[1] = {0: F_PWM_FENSTER, 1: F_PWM_BANNER, 2: F_PWM_ORGATISCH}
      • CAN data[2] = {0 - 255: Helligkeit 0x00=hell, 0xff=dunkel}

(Veraltete?) Notizen

Bastelraum Steuerung

    • Laserdrucker Einschalt stopp nach Hauptschalter
    • EVGs
    • 5V Optokoppler
    • Taster oder direkt Touchpannel
    • Rauchmelder Eingang
    • Temperatur Sensor
    • Bewegungssensor


    • Laserdrucker Einschalt stopp nach Hauptschalter
    • EVGs 4 * PWM
    • 5V Optokoppler 7
    • Taster licht
    • Rauchmelder Eingang
    • Türkontakt Eingang
    • Temperatur Sensor TWI
    • Bewegungsensor adc
    • buzzer

Pinouts atmega644:

  • PB6 - miso
  • PB5 - mosi
  • PB7 - sck
  • PB4 - cs
  • PB2 - int
laserdrucker 1
laserdrucker 2
sreg1 - opto 1
sreg2 - opto 2
sreg3 - opto 3
sreg4 - opto 4
sreg5 - opto 5
sreg6 - opto 6
sreg7 - opto 7
  • PC1 - SDA
  • PC0 - SCL
  • PA - Bewegung
  • PA - tür
  • PA - rauch
  • PD4 - pwm 1 oc1b
  • PD5 - pwm 2 oc1a
  • PD6 - pwm 3 oc2b
  • PD7 - pwm 4 oc2a

// DDRA &= ~(_BV(PA4)); // Eingänge Türkontakt // DDRC |= _BV(PC4) | _BV(PC5); // Schieberegister clk, data // DDRA |= _BV(PA5); // Schieberegister Strobe