Das Projekt Think City

Der chaotische Hauptfaden

Moderatoren: Heaterman, Finger, Sven, TDI, Marsupilami72, duese

Benutzeravatar
ESDKittel
Beiträge: 3147
Registriert: Fr 23. Aug 2013, 13:18

Re: Das Projekt Think City

Beitrag von ESDKittel »

Der Winter naht!

Das Thinkheizungsthema wird wieder rausgekramt und mir zugeschoben.
Erstmal die letzten Änderungen wegen dem LM135 Tempsensor eingebaut:
Bild
Und einen Kleinleistungsteststand improvisiert:
Bild
Bild
Dem LM335 hab ich mit ner Schelle an den Bratwiderstand geklemmt, die Glimmlampe zeigt "Heizen" an.

Die mit dem Thermoelement neben dem LM335 gemessene Temperatur schwankt zwischen 65°C und 85°C.
Wenn man dem System genug Zeit gibt, einen stationären Zustand zu erreichen, stellt sich was um und bei 70...75°C ein.
Die Regelung tut soweit und reagiert korrekt auf Störgrößen.
Die Einschaltverzögerung tut, Lowbat und Zenerdiodenüberwachung hab ich erstmal abgeklemmt.
Der MOSFET (seinerzeit aus einem TFT-Schaltnetzteil geerntet) schaltet einwandfrei.
Tahtfrequenz ist ca. 1,4Hz, Lastwiderstand sind ca. 8kOhm, Spannung war 360V.
Bild

Leistungsteststände (mittlere Last/Vollast) sind in Arbeit.
Mal sehen woran die FETs bei Arndt reihenweise abgeraucht sind.
Benutzeravatar
Arndt
Beiträge: 2589
Registriert: Fr 28. Jun 2013, 13:42
Wohnort: einen Schritt über den Abgrund hinaus

Re: Das Projekt Think City

Beitrag von Arndt »

ESDKittel hat geschrieben:Der Winter naht!

Das Thinkheizungsthema wird wieder rausgekramt und mir zugeschoben.
Naja, sagen wir es mal so, dass ich inkompatibel zur forensik in der Analog-proktologie bin. ;)
Und es gibt ja doch Interesse daran, warum ich einen Schnellwechsler für Mosfets bräuchte um das langfristig im Elektrokarren zu betreiben :lol:

Ich bin schonmal froh, dass Du im kleinen Aufbau nachweisen konntest, was wir bei unserer letzten Session gesehen haben, spannend wird das jetzt natürlich im großen.

Meine digitale Version wächst und gedeiht, nähere Doku folgt,
basieren tut das im Groben und Ganzen auf dieser Idee von anno dunnemals:
Bild->zoom

https://www.fingers-welt.de/phpBB/viewt ... 50#p204039

Als DC-DC sitzt da im Augenblick ein Meanwell oder Recom DCDC 1212 drauf, ich will aber nochmal messen, ob ich nicht doch mit einer Z-Diode hinkomme um Gatetreiber und Optokoppler zu verarzten.
Derzeit doktere ich am Attiny861 rum und versuche den PWM auf PB5 (OC1D) ans laufen zu kriegen... man ist das lange her, "kaum macht man mal 10 Jahre nix mit Controllern, schon gibts was neues!", oder wie war das ;)

ESD, wäre schön, wenn wir meine Endstufe dann an besagtem Termin auch mal stressen könnten.
BTW, sei bitte mit den FCH040N65S3 sparsam, da haben wir nicht so viele von und die Biester sind Ar...teuer
Benutzeravatar
ESDKittel
Beiträge: 3147
Registriert: Fr 23. Aug 2013, 13:18

Re: Das Projekt Think City

Beitrag von ESDKittel »

Heute mal einen dicken IXFR80N50 als FET eingelötet.
Hier mal Oszilettenbilder von Gatespannung (mit 100MOhm Tastkopf gemessen) und Drainstrom über Stromzange:
BildBild
Last weiterhin 8kOhm Drahtwiderstand.
Schaltet sauber ein und aus, konnte auch keine Störimpulse finden, minimale Pulsbreite sind ca. 60ms, bei weiter steigender Temperatur geht die PWM sofort auf 0%.
Zener_OK und LowBat funktionieren entsprechend der Sim.

Für den kleinen Lasttest habe ich ein vor vielen Jahren wegen bröseligem Stecker/Schnur stillgelegtes (Kabel bündig abgeschnitten :roll: ) und seitdem feucht gelagertes Tauchsieder (220V 1kW) reaktiviert. R_iso ist...quasi nicht vorhanden...erstmal trockenheizen...
Benutzeravatar
Fritzler
Beiträge: 12600
Registriert: So 11. Aug 2013, 19:42
Wohnort: D:/Berlin/Adlershof/Technologiepark
Kontaktdaten:

Re: Das Projekt Think City

Beitrag von Fritzler »

Die nehmen doch Drogen bei den neuen AVR.
Damit der PWM an OC1D funktioniert muss auch PWM1A oder PWM1B aktiv sein.
Anstatt, dass das über die normalen Timermode Bits geht (früher war alles besser?)
Zudem wird der >8Bit Zugriff nicht mehr wegabstrahiert und man darf ihn jetzt auch in C per Hand machen?!?!

Welche PWM Frequenz willste haben?
Bei 16MHz CPU Takt kommen da jetzt ~15kHz PWM raus.
Hier mal Code, eben trocken zusammengeworfen, probier mal:

Code: Alles auswählen

// Der Pin muss auf Ausgang sonst kommt da keine PWM raus
DDRB |= (1<<PB5);

TCCR1A = (1<<PWM1A);// PWM1A muss gesetzt sein um PWM Mode für ganzen Timer zu aktivieren
TCCR1B = (1<<CS10); // Timer läuft mit CPU Takt
TCCR1C = (1<<COM1D0) | (1<<PWM1D); //PWM Pin Cleared on Compare Match. Set when TCNT1=0x000.
TCCR1D = 0; 		 // Fast PWM!
TCCR1E = 0;			 // hier brauchts nix
PLLCSR = 0;			 // CPU Takt = Timer Takt
DT1    = 0;			 // nix hier mit Toten Zeiten

// OCR1C ist Timer TOP, ab hier springt er wieder auf 0, muss aber auf 1023
TC1H  = 3;
OCR1C = 255;

// 0 = "aus" -> 1023 = Vollstoff
void TIM1_WritePWM(uint16_t pwmval) {
	
	unsigned char sreg;
	/* Save global interrupt flag */
	sreg = SREG;
	/* Disable interrupts */
	cli();
	/* Set OCR1D to i */
	TC1H = (pwmval >> 8);
	OCR1D = (unsigned char)pwmval;
	/* Restore global interrupt flag */
	SREG = sreg;
}
TCCR1 A bis E, das wird langsam lächerlich :/

edit:
Oh ja man muss über 8 Bit große Zugriffe jetz wohl wirklich selber machen :roll:
Hier nen Tiny20 Beispiel vom 16Bit Timer1 aus dem DB:

Code: Alles auswählen

C Code Example(1)
unsigned int i;
...
/* Set TCNT1 to 0x01FF */
TCNT1 = 0x1FF;
/* Read TCNT1 into i */
i = TCNT1;
Das C Beispiel des Tiny861 ist oben in der Funktion "TIM1_WritePWM" zu sehen.
Nunja, ich bin auf ARM aka STM32 umgestiegen.
Benutzeravatar
Arndt
Beiträge: 2589
Registriert: Fr 28. Jun 2013, 13:42
Wohnort: einen Schritt über den Abgrund hinaus

Re: Das Projekt Think City

Beitrag von Arndt »

Ui, das geht ja wieder Schlag auf Schlag :D

Als PWM-Takt würde irgendwas um 1Hz rum reichen, die Heizung ist extrem träge...
der Attiny läuft mit dem interenen Oszillator mit 8MHz, grundsätzlich kann der wohl auch noch irgendwie einen Comparemode, so könnte eine Idee sein, den Temperaturfühler der analog am PA6 sitzt direkt auf den Comparevalue zu setzten und damit den dutycycle zu regeln. Ob das geht weiß ich aber noch nicht, soweit habe ich das Handbuch noch nicht durch..
Benutzeravatar
Fritzler
Beiträge: 12600
Registriert: So 11. Aug 2013, 19:42
Wohnort: D:/Berlin/Adlershof/Technologiepark
Kontaktdaten:

Re: Das Projekt Think City

Beitrag von Fritzler »

Der Timer nimmt keine externen Signale zum Komparator entgegen.
Da musste dann schon den ADC in Software auslesen, etwas rechnen und dann den PWM Wert dem Timer geben.

Für 0,95Hz:
TCCR1B = (1<<CS10); --> TCCR1B = (1<<CS13) | (1<<CS12) | (1<<CS11); //Timer läuft mit F_CPU/8192
Benutzeravatar
Arndt
Beiträge: 2589
Registriert: Fr 28. Jun 2013, 13:42
Wohnort: einen Schritt über den Abgrund hinaus

Re: Das Projekt Think City

Beitrag von Arndt »

Wow, meinen Respekt!
Habe das mal eben implantiert und ein bisl gespielt, da gibt es aber wohl noch eine Herausforderung, auf ca.8Sec kommt ein Blib von ca.2Sec... da läuft die Uhr wohl doch noch etwas lahm...

Code: Alles auswählen

/*
  Interner RC Oszillator mit 8MHz  (Teiler/X eingeschaltet)

	PIN 01 PB0 (MOSI/DI/SDA/OC1A/PCINT8)
	PIN 02 PB1 (MISO/DO/OC1A/PCINT9)
	PIN 03 PB2 (SCK/USCK/SCL/OC1B/PCINT10)
	PIN 04 PB3 (OC1B/PCINT11)
	PIN 05     VCC
	PIN 06     GND
	PIN 07 PB4 (ADC7/OC1D/CLKI/XTAL1/PCINT12)
	PIN 08 PB5 (ADC8/OC1D/CLKO/XTAL2/PCINT13) --- PWM für Heizung
	PIN 09 PB6 (ADC9/INT0/T0/PCINT14)
	PIN 10 PB7 (ADC10/RESET/PCINT15)
	 
 	PIN 11 PA7 (ADC6/AIN1/PCINT7)
 	PIN 12 PA6 (ADC5/AIN0/PCINT6) --- Tempsensor LM135
 	PIN 13 PA5 (ADC4/AIN2/PCINT5) --- Referenzpoti
 	PIN 14 PA4 (ADC3/ICP0/PCINT4)
 	PIN 15 AVCC
 	PIN 16 AGND
 	PIN 17 PA3 (AREF/PCINT3)
 	PIN 18 PA2 (ADC2/INT1/USCK/SCL/PCINT2)
 	PIN 19 PA1 (ADC1/DO/PCINT1)
 	PIN 20 PA0 (ADC0/DI/SDA/PCINT0)
  */ 
#define F_CPU 8000000UL    /* CPU clock in Hertz */

#include <util/delay.h> 
#include <avr/io.h>

#define BIT0 1
#define BIT1 2
#define BIT2 4
#define BIT3 8
#define BIT4 16
#define BIT5 32
#define BIT6 64
#define BIT7 128

//-----------------------------------------------------------------------------
void init_avr(void){
//-----------------------------------------------------------------------------
	// Ausgänge definieren
	DDRA = BIT1 |BIT5;	//PB5 als Ausgang für PWM, alle anderen sind Eingänge

	//Pull-up Widerstände
	PORTA = 0;  //Keine
  	PORTB = 0;  //Keine 
}
void init_pwm(void){
	// Der Pin muss auf Ausgang sonst kommt da keine PWM raus
	DDRB |= (1<<PB5);

	TCCR1A = (1<<PWM1A);// PWM1A muss gesetzt sein um PWM Mode für ganzen Timer zu aktivieren
	TCCR1B = (1<<CS13) | (1<<CS12) | (1<<CS11); //Timer läuft mit F_CPU/8192 = 0,95Hz
	TCCR1C = (1<<COM1D0) | (1<<PWM1D); //PWM Pin Cleared on Compare Match. Set when TCNT1=0x000.
	TCCR1D = 0;        // Fast PWM!
	TCCR1E = 0;          // hier brauchts nix
	PLLCSR = 0;          // CPU Takt = Timer Takt
	DT1    = 0;          // nix hier mit Toten Zeiten

	// OCR1C ist Timer TOP, ab hier springt er wieder auf 0, muss aber auf 1023
	TC1H  = 3;
	OCR1C = 255;
}

void init_adc(void) {
}
void TIM1_WritePWM(uint16_t pwmval) {    
	//unsigned char sreg;
	/* Save global interrupt flag */
	//sreg = SREG;
	/* Disable interrupts */
	//cli();
	/* Set OCR1D to i */
	TC1H = (pwmval >> 8);
	OCR1D = (unsigned char)pwmval;
	/* Restore global interrupt flag */
	//SREG = sreg;
}

int main(void)
{	
	// wait a little before starting setup
	_delay_ms(1000);
	
	//init stuff
	init_avr();
	init_pwm();
	init_adc();
	TIM1_WritePWM(240);

    while (1) //get me warm!!!
    { 		
    }
}

Zuletzt geändert von Arndt am Di 21. Aug 2018, 22:01, insgesamt 1-mal geändert.
Benutzeravatar
Fritzler
Beiträge: 12600
Registriert: So 11. Aug 2013, 19:42
Wohnort: D:/Berlin/Adlershof/Technologiepark
Kontaktdaten:

Re: Das Projekt Think City

Beitrag von Fritzler »

Code: Alles auswählen

DDRA = BIT1 |BIT5;   //PB5 als Ausgang für PWM, alle anderen sind Eingänge
Ähh?
Da is wohln vertipper, glücklicherweise rückts mein Code grade.

Kanns sein, dass die CLK/8 Fuse gesetzt ist?
Dann läuft die Kiste mit 1MHz und das 8fache von 1Hz is ne Periodendauer von 8sek :lol:

Wenne kein Bock hast mit Fusebits rumzuspielen, dann:

Code: Alles auswählen

CLKPR = (1<<CLKPCE); //Schreibfreigabe
CLKPR = 0; //F_CPU = F_RC/1 statt /8
Zuletzt geändert von Fritzler am Di 21. Aug 2018, 22:07, insgesamt 2-mal geändert.
Benutzeravatar
Arndt
Beiträge: 2589
Registriert: Fr 28. Jun 2013, 13:42
Wohnort: einen Schritt über den Abgrund hinaus

Re: Das Projekt Think City

Beitrag von Arndt »

Hmm, jetzt wo Du es sagst!
hatte den Ausgang erst auf PA5 geplant und nur die Hälfte umgeschrieben... interessanertweise hat der Ausgang beim Rumtesten trotzdem funktioniert :? :?:

Fusen sind folgende gesetzt:
Bild

Edit: Knirsch und wenn man mal liest, was man da eigentlich tut, dann sieht man, dass der Fritzler recht hat!
Danke!!!
Benutzeravatar
Arndt
Beiträge: 2589
Registriert: Fr 28. Jun 2013, 13:42
Wohnort: einen Schritt über den Abgrund hinaus

Re: Das Projekt Think City

Beitrag von Arndt »

@ESD, brauchst Du noch weitere Dummyloads?
Ich hätte hier noch ein Raclette mit Isofehler, zwei Ölradiatoren, oder eine alte Backofenheizwendel.
Oder sollen wir dann mit den originalheizern weitermachen?
Dann bringe ich noch das Pumpenmodul mit :)
Sollen wir spontan einen Jacuzzi improvisieren?
Bild
Quelle und Bauanleitung: https://www.instructables.com/id/Cheap- ... b-Jacuzzi/
Benutzeravatar
Arndt
Beiträge: 2589
Registriert: Fr 28. Jun 2013, 13:42
Wohnort: einen Schritt über den Abgrund hinaus

Re: Das Projekt Think City

Beitrag von Arndt »

Hallo liebe Gemeinde der Reparatur und Wiederverwendung :D

Ich muss da gerade eine Lanze für den kleinen Think brechen, der (wider erwarten) immer noch treu seinen Dienst verrichtet!

Der Elektrorollstuhl hat jetzt 67000km auf der Uhr (zur Erinnerung, mit knapp 25000km habe ich ihn als wirtschaftlichen Totalschaden bekommen).
Wir sind mit ihm jetzt also nach der Reparatur einmal um die Welt und schon wieder bis nach Süd-Italien gefahren!

Man stelle sich das mal vor, das sind fast 420 000 Fußballfelder! :lol:
Zuletzt geändert von Arndt am So 3. Mär 2024, 22:22, insgesamt 1-mal geändert.
Benutzeravatar
RMK
Beiträge: 5408
Registriert: Di 20. Jan 2015, 14:59
Wohnort: östlich von Stuttgart

Re: Das Projekt Think City

Beitrag von RMK »

grossen Respekt! Mein Smart hat grade auch die erste
Erdumrundung mit mir hinter sich gebracht, allerdings
nutze ich ihn auch nicht *jeden* Tag... nur fast. ;-)
(mit 78k bekommen, jetzt 121k drauf....)

btw, was für Fussballfelder habt ihr denn da oben im Norden? 8-)
Benutzeravatar
Arndt
Beiträge: 2589
Registriert: Fr 28. Jun 2013, 13:42
Wohnort: einen Schritt über den Abgrund hinaus

Re: Das Projekt Think City

Beitrag von Arndt »

Hopsa, Du hast ja recht, gut Du das gesehen hast :o
Ich habe so absolut keinen Hang zu Fußball, ich fand die Analogie nur witzig.
Ich korrigiere das sofort
Anse
Beiträge: 2304
Registriert: Mo 12. Aug 2013, 21:30
Wohnort: Bühl (Baden)

Re: Das Projekt Think City

Beitrag von Anse »

Beeindruckend für so eine zusammen gewürfelte Kiste :o

Kennst du eigentlich das "Review Video" von Aging Wheels? https://www.youtube.com/watch?v=kn1gMnvFJIY
Benutzeravatar
ProgBernie
Beiträge: 593
Registriert: Fr 16. Sep 2022, 21:59
Wohnort: Zwischen Hamburg und Haiti ^W Lübeck

Re: Das Projekt Think City

Beitrag von ProgBernie »

Arndt hat geschrieben: So 3. Mär 2024, 20:23 Man stelle sich das mal vor, das sind fast 420 000 Fußballfelder! :lol:
Wichtig ist noch die Umrechnung in "Saarland", damit man sich die Größe eines Fußballfeldes vorstellen kann.
Benutzeravatar
Hightech
Beiträge: 11474
Registriert: So 11. Aug 2013, 18:37

Re: Das Projekt Think City

Beitrag von Hightech »

Übrigens ist die Vergleichsangabe 1 Fußballfeld gegenüber 1 Saarland kompletter Blödsinn, denn ein Fußballfeld hat keine definierte einheitliche Größe.
Das Saarland schon.
Benutzeravatar
Finger
Administrator
Beiträge: 7465
Registriert: Di 12. Jun 2012, 20:16
Kontaktdaten:

Re: Das Projekt Think City

Beitrag von Finger »

War da nicht was mit 7100 qm für ein Fußballfeld als internationaler Standard?
Benutzeravatar
Sunset
Beiträge: 1512
Registriert: Fr 6. Dez 2013, 15:19

Re: Das Projekt Think City

Beitrag von Sunset »

Benutzeravatar
Lötfahne
Beiträge: 2846
Registriert: Sa 9. Nov 2013, 10:43
Wohnort: KBS 669 bzw. 9401

Re: Das Projekt Think City

Beitrag von Lötfahne »

"Saarland" ist die alte Bezeichnung, das heißt "Kosovo-Frankreich". :mrgreen:













... zumindest aus Pfälzer Sicht. 8-)
wernerc
Beiträge: 144
Registriert: Di 21. Nov 2017, 18:33
Wohnort: Irgendwo im Ruhrgebiet

Re: Das Projekt Think City

Beitrag von wernerc »

Arndt hat geschrieben: So 3. Mär 2024, 20:23 Hallo liebe Gemeinde der Reparatur und Wiederverwendung :D

Ich muss da gerade eine Lanze für den kleinen Think brechen, der (wider erwarten) immer noch treu seinen Dienst verrichtet!

Der Elektrorollstuhl hat jetzt 67000km auf der Uhr (zur Erinnerung, mit knapp 25000km habe ich ihn als wirtschaftlichen Totalschaden bekommen).
Wir sind mit ihm jetzt also nach der Reparatur einmal um die Welt und schon wieder bis nach Süd-Italien gefahren!

Man stelle sich das mal vor, das sind fast 420 000 Fußballfelder! :lol:
Grundsaetzlich sind die Dinger ja auch recht zu zuverlaessig, wenn da nicht die kleinen Serienprobleme waerenm, die Arndt aber vermutlich bei der Reparatur schon beachtet hat.
Bei den Lithium Modellen ist das hauptsaechlich Kondenswasser an den BMS Frontends der Zellbloecke.
Die haben zwar ein Coating zum Schutz nach nunmehr aber ueber 10 Jahren in Betrieb wirkt das Coating nicht mehr so gut und es entstehen ungewollte Widerstaende auf den PCBs, die entweder dazu fuehren das die Zellspannungen falsch gemessen werden oder sogar die Balancerswitches eingeschaltet werden und die Zellen unkontrolliert entladen.
Das haben leider viele dieser Fahrzeuge inzwischen.

Ansonsten kann man fuer den Stadtbetrieb aber sehr zufrieden mit den Dingern sein.
Antworten