- Mitglied seit
- 01. Sep 2012
- Beiträge
- 17.485
- Punkte für Reaktionen
- 8
- Punkte
- 414
Mit dem Dimmer kann man aber tagsüber die Helligkeit hoch regeln lassen.
Mit dem Dimmer kann man aber tagsüber die Helligkeit hoch regeln lassen.
Kleiner cronjob, der die LEDs abends gänzlich ausschaltet arbeitet bei mir seit x Jahren ...
- das müsste dann aber auch helligkeitsgesteuert sein, sonst reicht schon direktes Sonnenlicht und Du siehst nix mehr... nun ja, ist wahrlich eine echte "Hightlight-Feature-Diskussion"
#!/opt/bin/bash
# Quelle: http://www.anginf.de/?p=138
# benötigt coreutils-date, bc
# Unsere Position
posLaenge="13.79756"
posBreite="51.90391"
# Notwendige Vorberechnungen
PATH=/opt/bin:$PATH
zoneinfo=$(date +%z) # Zeitzone
T=`date +%j` # Tag im Jahr
pi="3.14159265358979323844" # pi=`echo "4*a(1)" | bc -l`
rad=$(echo "${pi}/180" | bc -l)
h=$(echo "-(5/6)*(${rad})" | bc -l) # Höhe des Sonnenmittelpunkts bei Aufgang: Radius+Refraktion
BreiteRAD=$(echo "${posBreite}*${rad}" | bc -l)
# Welcher Tag ist heute?
echo "Heute ist $(date +%d.%m.%y), der $(date +%j). Tag im Jahr"
echo -n "Wir nutzen die Zeitzone $(date +%Z), dies entspricht $(date +%z) und damit "
echo "${zoneinfo:0:3}"
echo -e
sonnendekl=`echo "0.409526325277017*s(0.0169060504029192*(${T}-80.0856919827619))" | bc -l`
sonnendeklDEG=$(echo "${sonnendekl} / ${rad}" | bc -l)
arccosint=$(echo "(s(${h})-s(${BreiteRAD})*s(${sonnendekl}))/(c(${BreiteRAD})*c(${sonnendekl}))" | bc -l)
arccosintsign=${arccosint:0:1} # von links ab Position 0 ein Zeichen
if [ ${arccosintsign} == "-" ]; then
usesign="+"
else
usesign="-"
fi
arc2cosint=$(echo "(${arccosint}) * (${arccosint})" | bc -l)
acoszeit=$(echo "${pi}/2 ${usesign} a(sqrt(${arc2cosint} / (1 - (${arc2cosint}) ) ) ) " | bc -l)
zeitdiff=$(echo "12*${acoszeit}/${pi}" | bc -l) # KORREKT!
zeitgleich=$(echo "-0.170869921174742*s(0.0336997028793971 * ${T} + 0.465419984181394) - 0.129890681040717*s(0.0178674832556871*${T} - 0.167936777524864)" | bc -l)
aufgang=$(echo "12-(${zeitdiff})-(${zeitgleich})-(${posLaenge}/15)${zoneinfo:0:3}" | bc -l)
untergang=$(echo "12+(${zeitdiff})-(${zeitgleich})-(${posLaenge}/15)${zoneinfo:0:3}" | bc -l)
if [ ${aufgang:1:1} == "." ]; then # Ist ein einstelliges Ergebnis der Form x.xxxx, wir brauchen noch eine 0 vorne
aufgang=$(echo 0${aufgang})
fi
aufgangDaem=$aufgang
aufgangH=`echo "${aufgang:0:2}:"` # Immer ein zweistelliges Ergebnis
aufgangM=`echo "(${aufgang} - ${aufgang:0:2}) * 60" | bc ` # | xargs printf "%02.0f\n"
aufgangM="$(printf '%02.0f\n' "$aufgangM")" # 2stellig mit führender Null
aufgangzeit=$aufgangH$aufgangM
echo " Aufgang (hh:mm): $aufgangzeit"
untergangH=`echo "${untergang:0:2}:" ` # Immer ein zweistelliges Ergebnis
untergangM=`echo "(${untergang} - ${untergang:0:2}) * 60" | bc ` #| xargs printf "%02.0f\n"
untergangM="$(printf '%02.0f\n' "$untergangM")"
untergangzeit=$untergangH$untergangM
echo " Untergang (hh:mm): $untergangzeit"
################################################################
echo -e; echo "Dämmerungszeiten:"; echo -e
dawn=$(date -d "${aufgangzeit//:/} - 32 minutes" "+%k:%M")
dusk=$(date -d "${untergangzeit//:/} + 32 minutes" "+%k:%M")
if [ ${dawn:1:1} == "." ]; then # Ist ein einstelliges Ergebnis der Form x.xxxx, wir brauchen noch eine 0 vorne
dawn=$(echo 0${dawn})
echo "DAWN-TEST: ${dawn:1:1}"
fi
echo " Morgendämmerung: $dawn"
echo " Abenddämmerung: $dusk"
################################################################
echo -e; echo "Auswertung:"
aufgangzeit2=$(date -d "${aufgangzeit//:/}" "+%k:%M")
aufgangzeit2=`echo $aufgangzeit2 | sed -e s/://g`
untergangzeit2=$(date -d "${untergangzeit//:/}" "+%k:%M")
untergangzeit2=`echo $untergangzeit2 | sed -e s/://g`
now=`date +%k%M` #:%M`
if [ "$aufgangzeit2" -le $now ] && [ "$untergangzeit2" -ge $now ]; then
echo " L==> Es ist Tag! :-)"
echo " Hier kommt das ausgelöste Skript/Programm rein"
else
echo " L==> Es ist Nacht! :-("
echo " Hier kommt das ausgelöste Skript/Programm rein"
fi
if [ "$aufgangzeit2" -le $now ] && [ "$untergangzeit2" -ge $now ]; then
echo " L==> Es ist Tag! :-)"
else
echo " L==> Es ist Nacht! :-("
fi
http://www.synology-wiki.de/index.php/LEDs_und_ButtonsDa fehlt aber noch der Befehl für die LEDs.
Das hatte ich nicht mehr mitbekommenHatte ich ja oben noch ergänzt![]()
Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.
Als Dankeschön schalten wir deinen Account werbefrei.
Du bist nicht hier, um Support für Adblocker zu erhalten. Dein Adblocker funktioniert bereits ;-)
Klar machen Adblocker einen guten Job, aber sie blockieren auch nützliche Funktionen.
Das Forum wird mit hohem technischen, zeitlichen und finanziellen Aufwand kostenfrei zur Verfügung gestellt. Wir zeigen keine offensive Werbung und bemühen uns um eine dezente Integration.
Bitte unterstütze dieses Forum, in dem du deinen Adblocker für diese Seite deaktivierst.
Du kannst uns auch über unseren Kaffeautomat einen Kaffe ausgeben oder ein PUR Abo abschließen und das Forum so werbefrei nutzen.
Vielen Dank für Deine Unterstützung!