
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
Hallo, Frage meinerseits welchen Compiler benutzt Du. Was funktioniert nicht. Da ich den Compiler nicht kenne, wo weist Du dem PWM einen Wert zu. Oder habe ich etwas übersehen. Gruß Frage > Hallo zusammen, wer kann mir bei meiner Solar-Nachlaufsteuerung beim Programm weiterhelfen. > Die Hardware steht soweit(H-Brücke mit L298), das Panel wird mit einem Linearmotor verstellt. > Der Sonnenstand wird mit 2 Fotowiderständen erfasst. > Das Programm sollte bei einer bestimmten Helligkeit morgens starten. in Abständen von etwa 12 - 20 Min. sollte die Steuerung nachregeln.Bei Dunkelheit sollte das Panel in Morgenstellung fahren. Tagsüber auftretende Helligkeitsunterschiede (Regen usw.) sollten im Programm berücksichtigt werden(Dämpfung). > Der Ansatz meines Programmes, bei dem ich leider nicht weiterkomme. > > ' Solar Nachlaufsteuerung, nach der Sonne ausrichten > option ccmicro '14.07.08 > > define ost ad[1] 'Sensor Licht Ost (A9060) > define stopp port[3] 'Endschalter Morgenstellung > define west ad[2] 'Sensor Licht West (A9060) > define l byte 'Zähler Licht- Schaltschwelle > define x byte 'Zähler Zeit > define Motor_1 port[4] 'Motor > define Motor_2 port[5] 'Motor > define pwm_ein port[6] 'PWM- Port einschalten > > l = west > CONST dunkel = 105 'Schaltschwelle Hell(100) (weniger = heller) > > function zustell() > if west < ost then 'Zustellung > pwm_ein = on 'PWM- Port einschalten > Motor_1 = off ' Motor Rechtslauf, Zustellung > Motor_2 = on > else > goto aus > > if west >= ost then > #aus > Motor_1 = off ' Motor aus > Motor_2 = off > pwm_ein = off 'PWM- Port ausschalten > end if > end if > end function > Function zurueck() > pwm_ein = on 'PWM- Port einschalten > Motor_1 = on ' Motor Linkslauf, in Morgenstellung > Motor_2 = off > for x=1 to 250 ' Motor Laufzeit > pause 10 > if stopp= off then goto aus 'prüfe Endschalter Morgenstellung > next > #aus > Motor_1 = off ' Motor aus > Motor_2 = off > pwm_ein = off 'PWM- Port ausschalten > End Function > > 'PROGRAMM-START > pause 200 > zurueck() > wait west > dunkel 'warte bis Dunkelheit > #morgen > if west <= dunkel then 'wenn hell dann Zustellen > zustell() 'bei west heller zustellen > if west > dunkel then 'warte bis Dunkelheit > > zurueck() 'Panel fährt in Morgenstellung > end if > end if > goto morgen |
| Antwort schreiben |