Hallo Leute,
Ich brauche mal wieder euer professionelles Gemecker ÄHM, eueren
professionellen Rat, da ich gerade ein chinesiches Rätsel vom Aldi
zerlege
und mich frage "Was haben die sich in China dabei nur wieder gedacht"
Dabei geht es um eine Minispülmaschine von Medion (Gebaut von Midea) die
einen für mich sehr komischen Controller an der Pumpe für den Sprüharm
hat.
Dabei kommt ein PIC 12F617 als µC zum Einsatz, der aber leer zu sein
scheint,
siehe angehängter Dump. anscheinend hat der "Controller" auch einen
Hallsenor der irgendwas am Motor überwacht. Und einen Triac (JST08K)
gibts auch noch in der Wundertüte aus China. Wenn mir einer anhand der
Fotos erklären kann, wie das ganze funktionieren soll, bin ich sehr viel
froher als ichs jetzt bin, würde mich nämlich wirklich interessieren wie
das wieder (nicht) funktioniert. Scheint aber kein BLDC Motor zu sein,
also kein BLDC Controller.
Der Motor brummt im Betrieb auch sehr laut, ist aber Neuzustand also
scheint das normal zu sein???
Bastler schrieb:> Dabei kommt ein PIC 12F617 als µC zum Einsatz, der aber leer zu sein> scheint,> siehe angehängter Dump.
Wird wohl gegen Auslesen geschützt sein.
Die Pumpe hat einen permanenterregten Synchronmotor der zum anlaufen
volle Netzspannung bekommt. Wenn über den Hallsensor detektiert wird,
dass der Motor läuft, wird die Spannung mittels Phasenanschnitt
reduziert.
Bastler schrieb:> Aber was macht der PIC dann, da ist ja kein Programm drauf, das> sowas> anstellen könnte?
Der PIC ist nicht leer. Readout-Protection bedeutet du kannst ihn nicht
auslesen. Dass du eine Fehlermeldung erwartest ist dein Problem. Lies
doch mal aufmerksam das Datenblatt des PICs was die dazu schreiben was
man liest wenn die Readout-Protection aktiv ist ...
Wobei es ja eigentlich einfach ist, so ein kleines Programm zu
rekonstruieren, immerhin dürfte das ja nicht viel können.
Dass Chinesen im allgemeinen alles protecten ist mir gut bekannt, die
wollen
ja nicht, dass ein anderer merkt, dass sie das slber nur geklaut
haben...
0xff bedeutet leer - das sind aber 0x00.
(beim Flashen werden immer bits gelöscht - leere Zellen haben die Bits
alle gesetzt. Das ist meines Wissens bei allen EEPROMs, Flashs der Fall)
Daher ist es sehr wahrscheinlich, dass das Flash auslesegeschützt ist.
Kann man denn so ein einfaches Programm nicht leicht nachbauen?
Viel dürfte das doch nicht können, würde mich mal interessieren, wie das
mit der Schaltung funktionieren soll und wie das in C Code aussieht.
Unter IPE im 'Production' Register erstmal das Lesen des
Programmspeichers anschalten und dann nochmal auslesen. Immer noch nix?
Dann isser geschützt.
Das ist aber auch nur ein einfacher Regler mit Pulsen vom Hallgeber für
die Drehzahl und Phasenanschnitt für den Triac als Ausgang.
Bastler schrieb:> wie das> mit der Schaltung funktionieren soll und wie das in C Code aussieht.
Lies Application Note AVR221 (aka AN2588) bei Microchip. Da steht ein
PID Regler mit so kleinen MC drin:
https://www.microchip.com/wwwAppNotes/AppNotes.aspx?appnote=en591227
Mich hätte halt mal interessiert wie so ein Programm in C aussieht,
leider beherrsche ich das nicht gut genug um das selber zu schreiben,
das dürfte ja nicht mehr als ein Paar wenige Zeilen haben? Der Chip hat
ja so gut wie keine Leistung... Da wäre Assembler vielleicht sogar
besser da wenn mans kann schneller?
Hat das laute Brummen auch damit zu tun?
Werds mal mit aktivierter Programmspeicher lesen Option versuchen.
Die Leistung der Pumpe dürfte ja auch von diesem kleinen Programm
abhängig sein, also durch modifikation des Programms verstellbar sein?
Danke für die APPnote werd mir das mal durchlesen und sehen ob ichs
kapiere.
Ich verstehe wirklich nicht, warum bei Chinesen immer alles
auslesegeschützt sein muss, können die denn nicht mal bei so einem
Rechenzwerg mit so banalem Programm mal ausnahmsweise drauf verzichten?
Scheint doch so zu sein wie ein Kollege in der Firma mal sagte "Das
Aktivieren des Ausleseschutzes bei µC´s ist bei Chinesn ein Zwang der
über die Gene bestimmt wird und nicht abgestellt werden kann"...
Bastler schrieb:> Dass Chinesen im allgemeinen alles protecten ist mir gut bekannt, die> wollen ja nicht, dass ein anderer merkt, dass sie das slber nur geklaut> haben...
Du sollst doch nicht von deiner Person auf andere schließen. Es gibt
auch ehrliche Menschen.
Mutti
Bastler schrieb:> Der Chip hat> ja so gut wie keine Leistung
Er ist auf jeden Fall viel schneller als die 50Hz aus dem Netz. Das
Programm besteht aus 3 Teilen.
1. Drehzahl messen über Periodendauer der Hallpulse
2. Ausgangroutine nimmt Zahlenwert und macht daraus den verstellbaren
Monoflop fürs Triac Gate.
3. PID Regler verschnurzelt Ist-Drehzahl und Sollvorgabe und liefert an
2.
Der Rest ist Beherrschung von Raceconditions und Skalierung.
Bastler schrieb:> Da wäre Assembler vielleicht sogar> besser da wenn mans kann schneller?
Das ist ne Urban Legend. C ist heute fast genauso schnell und hat den
grossen Verteil, das man z.B. eine App Note von Atmel auch zu PICs
portieren kann.
Bastler schrieb:> "Das> Aktivieren des Ausleseschutzes bei µC´s ist bei Chinesn ein Zwang der> über die Gene bestimmt wird und nicht abgestellt werden kann"
Machen wir bei uns immer, hat nicht mit Chinese oder nicht Chinese zu
tun... komisches Vorurteil
Bastler schrieb:> Mich hätte halt mal interessiert wie so ein Programm in C aussieht,> leider beherrsche ich das nicht gut genug um das selber zu schreiben,> das dürfte ja nicht mehr als ein Paar wenige Zeilen haben?
Glaube auch das stellst du dir zu einfach vor. Oder weisst du wie und
mit was das ganze angesteuert wird?
Wie die Pumpe angesteuert wird? Die krieg nur P und N über ein einfaches
Relais, zwischen Relaisausgang und Pumpenmotor sitzt dann die Platine,
da sitzt nix komplexes dahinter, ist je keine Miele sondern eine 130€
Maschine von Aldi... Die kann auch so Sachen wie mit unterschiedlichem
Druck arbeiten, usw. was die Miele halt so können nicht, wobei es
theoretisch wohl machbar wäre wenn: Die Herrn Chinesen den Source Code
für die ganze Maschine rausrücken würden HAHAHA! Und man eine
Kommunikationsleitung zwischen der Pumpe und dem Hauptsteuergerät der
Maschine ziehen würde (Und dann beide Steuergeräte passend
umprogrammieren würde). Dann könnte die Hauptsteuerung dem PIC auf der
Pumpenplatine sagen wie viel Drehzahl die Pumpe machen soll, mit der
Drehzahl steigt dann der Druck, dann könnte die wie die Miele auch den
Druck dem Programm entsprechend verändern. Aber das wird wohl alleine
schon wegen dem Teil mit dem Quellcode absolut unmöglich sein, es sei
denn man wäre bereit den Quellcode von dem ganzen Ding neu zu schreiben,
das dürfte selbst mit jemandem der Jahre an Programmiererfahrung hat und
bereit wäre das zu machen Wochen dauern, und dann ist da noch die Frage
wie und mit was man den japanischen NEC Prozessor auf der Hauptsteuerung
programmieren sollte, und wo her man den Compiler dafür kriegt...
Matthias S. schrieb:> Das ist ne Urban Legend. C ist heute fast genauso schnell und hat den> grossen Verteil, das man z.B. eine App Note von Atmel auch zu PICs> portieren kann.
Oje.
Du hast noch nie in Assembler programmiert und dir noch nie ein C
-Compilerlisting mit generierzem Assemblrrcode angesehen.
Ein Assemblerprogrammierer optimiert bei kleinen Programmen ERHEBLICH
besser als ein C-Compiler, und erzeugt somit auch deutlich schnelleren
Code. 1:2 ist kein Thema, manchmal reichts für 1:10.
Und dann noch PIC, bei dem der Compiler eh schlecht ist.
Dinge wie Arrays alignen z.B. auf 256 byte Grenzen, Register reservieren
damit Interrupt-Routinrn sie nicht pushen müssen, Wertebereiche anpassen
statt 0..9 z.B. 37 bis 46 damit man direkt addressieren kann, bytes
verwenden statt int, schaffen viele Compiler nicht.
Bastler schrieb:> Mich hätte halt mal interessiert wie so ein Programm in C aussieht,> leider beherrsche ich das nicht gut genug um das selber zu schreiben,> das dürfte ja nicht mehr als ein Paar wenige Zeilen haben?
Das sagen alle, die keine Ahnung vom Programmieren haben.
Selber machen erfordert:
- Talent zum Programmieren
- die Programmiersprache lernen
- die Programmierung des Mikrocontrollers lernen
- Erfahrungen mit Regelkreisen machen
- die Schaltung Reverse-Engineeren (analysieren, wie sie funktioniert)
- das Programm schreiben
- das Programm testen
Wenn du das machen lässt, kannst du mit mehreren tausend Euro Kosten
rechnen.
Bist du der Bastler, der ganz ähnliche Fragen schon mehrfach gestellt
hat?
Da Du hier so über „die Herren Chinesen“ hierziehst empfehle ich Dir
eine Reise nach Shenzhen (ist nicht soo teuer, sagen wir 1 Woche wenn es
die Zeiten wieder erlauben) und schaust Dir ein paar gute Betriebe an.
Ich meine nicht so Megakonzerne wie Foxconn usw. - ganz normale
Mittelständler. Und dann schaust Du nochmal hierzulande. Das wird ein
Wendepunkt in deiner Gedankenwelt werden. Versprochen.
Hallo,
Wenn dann würde ich mir Taiwan mal anschauen. Ich würde nach China
keinen Fuß setzen, das ist eine furchtbare Cyberdiktatur, und in meinen
Augen die größte Terrororganisation der Welt, keiner weiß ob man aus so
einem Staat nochmal lebend rauskommt (Vor allem als so einer wie ich der
immer nie die Klappe halten kann). Außerdem waren alle Begegnungen die
ich mit Chinesen hatte nur negativ (Verarsche, Abzocke, Betrug) mit
Taiwanern hatte ich aber bis auf wenige Ausnahmen (Die gibt es wohl
überall) noch keine wirklich schlechten Erfahrungen.
Ich denke mal ich bin DER Bastler den du meinst...
Mein Problem ist nicht, zu kapieren wie ich ein Programm aufstellen
soll, auch
das Reversen der Hardware stellt für mich kein Problem dar (Weiß über
die Hauptsteuerung der Spülmaschine mittlerweile so gut wie alles,
welche Pins vom µC wo hin gehen, dass die anscheinend wirklich über CAN
Bus ja, CAN Bus mit ihrem Bedienteil vorne kommuniziert, und welche Pins
über einen Mehrfachopamp welche Relais schalten weiß ich auch. Ich habe
auch eine Vorstellung davon wie ich das Programm für so ein Ding
aufstellen würde, aber leider keine Möglichkeit das dem µC in einer für
ihn brauchbaren Weise zu sagen, da ich mit C einfach nichts anfangen
kann (Ich weiß, schlechte Voraussetzungen für jemanden der programmieren
lernen will) Aber dieses &!= ist eine Art Syntax mit der ich nicht klar
komme.
Ich weiß dass ein guter Assemblerprogrammierer alle an die Wand spielt,
da hast du mit deinem dummen Compiler keine Chance, gegen einen Menschen
der denken kann, aber leider macht das die Sache noch schwerer, und vor
allem aufwändiger, da Assembler viel länger zum Schreiben dauert als C.
Ich wüsste auch wie ich den PIC von der Pumpe programmieren müsste, auch
kenne ich die Pins und ihre Belegung, aber ich weiß nicht, wie ich das
dem µC sagen soll, dessen Sprache beherrsche ich nicht.
Das rumbasteln machen zu lassen wäre ja totlangweilig, wo bleibt dann
der Spaß an der Sache? Ich mach das ja aus Neugier, oder warum würde ich
sonst ein nagelneues Gerät öffnen, um reinzuschauen was drin ist?
Ich bin mir relativ sicher dass das Programm auf dem PIC ziemlich klein
ist, aus einem einfach Grund: Der Programmspeicher ist ziemlich klein,
der hat wenn ich richtig gelesen hab gerade mal 3,5kb, damit dürfte das
Programm nicht zu lang sein, wozu auch, es muss ja nur:
Messen wie schnell sich die Pumpenwelle dreht. Dreht sie sich zu langsam
wird die Spannung erhöht, damit sie schneller läuft. Läuft sie zu
schnell wird die Spannung herabgesetzt damit sie langsamer wird. Damit
ist das Problem mit dem Anlaufen auch gleich einfach ohne spezielle
Anlaufprogramm gelöst, da der Chip am Anfang sieht "Pumpenwelle dreht
sich nicht" also voll Saft drauf.
Wenn ich das jetzt als Software schreiben müsste (Und es könnte) würde
ich es so konstruieren, dass die Geschwindigkeit der Welle immer dadurch
gleichmäßig gehalten wird dass: Je weiter sie sich der Solldrehzahl
annähert, desto weiter wird die Spannung herabgesetzt, je weiter sie
sich davon entfernt, desto weiter wird die Spannung wieder erhöht. Das
gleiche beim Überdrehen, also drehen über der Solldrehzahl: Je schneller
sie wird desto weiter wird die Spannung abgeregelt. Wenn man das gut
schreibt müsste die damit richtig sauber zum laufen zu kriegen sein. Nur
wie erkläre ich das jetzt dem PIC, der spricht kein Deutsch...
Wenn ich sowas versuche wäre es mir aber natürlich lieber ich könnte den
µC vorher auslesen, so dass ich wenns mit dem selber schrieben nicht
klappt die original Firmware wieder draufsetzen kann.
Und dann wäre natürlich noch die Frage, warum der Motor so arg brummt,
wobei vielleicht haben die auch an den Silentgummis gespart.
Es hilft dir gar nichts, den Mikrocontroller auszulesen, weil du dann
Maschinencodes (einen Haufen Zahlen) bekommst - keinen Quelltext.
Wir hatten das doch schon mehrfach durchgekaut. Warum kommst du immer
wieder mit anderen Motor-Controllern an, wo du erneut behauptest, es
müsste dpch alles ganz einfach sein.
Es ist nicht einfach!
Schau mal, wie lange du schon an diesem Thema dran bist ohne auch nur
eine Zeile Quelltext geschrieben zu haben. Wenn du deine
Programmierkünste weiter so langsam voran bringst, wirst du in diesem
leben kein einziges ernsthaftes Programm schreiben. Und schon gar nicht
Maschinencode analysieren.
Es gibt für dich nur einen Weg, voran zu kommen: Learning by Doing.
Mit deinen Vermutungen, was alles gehen könnte und sein müsste, tretest
du auf der Stelle und verschwendest unser aller Zeit.
Bastler schrieb:> Wenn dann würde ich mir Taiwan mal anschauen.
Taiwan ist in Teilen schon (leider) sehr europäisch/amerikanisch, in
anderen Aspekten auch noch sehr traditionell.
> Ich würde nach China keinen Fuß setzen,
Musst DU auch nicht.
> das ist eine furchtbare Cyberdiktatu> Augen die größte Terrororganisation der Welt, keiner weiß ob man aus so> einem Staat nochmal lebend rauskommt (Vor allem als so einer wie ich der> immer nie die Klappe halten kann).
Ah ja, soso. Dann weiß ich nächstes Mal Bescheid.
> Außerdem waren alle Begegnungen die> ich mit Chinesen hatte nur negativ (Verarsche, Abzocke, Betrug)
Schade für Dich.
Das der PIC einen Defekt hat ist eh nicht zu vermuten. Gerade wenn es
brummt (Schwingungen) würde ich mir mal den Übergang zwischen den
Platinen SEHR genau ansehen.
Stefan ⛄ F. schrieb:> Es hilft dir gar nichts, den Mikrocontroller auszulesen, weil du dann> Maschinencodes (einen Haufen Zahlen) bekommst - keinen Quelltext.
Das weiß ich, aber bei dem PIC hier wäre es wohl so wenig, dass ich ihn
vielleicht sogar verstehen könnte. Learning by doing ist eine gute
Sache, nur wo fange ich da an?? Irgendeine Hardware werde ich da als
Opfer brauchen, irgendwas das bei Fehlprogrammierung nicht gleich kaputt
geht, oder irgendwas kaputt macht... Die Frage ist nur was ist einfach
und ungefährlich genug...
Bastler schrieb:> Irgendeine Hardware werde ich da als Opfer brauchen
Wenn Du die Software als sehr einfach ansiehst wäre es doch ein Klacks
die HW nachzubauen. Die ist nämlich WIRKLICH einfach und auch ohne
Schaltplan zu verstehen. Das Hochvolt-Netzteil kannst Du für den Versuch
ja weglassen. Den Sensor kannst Du vorsichtig auslöten.
Bastler schrieb:> aber bei dem PIC hier wäre es wohl so wenig, dass ich ihn> vielleicht sogar verstehen könnte.
Da versieh dich mal nicht. Wenn da tatsächlich noch ein PI(D) Regler mit
drin ist kann das sehr schnell unübersichtlich werden (sofern das per C
erstellt wurde, wovon auszugehen ist (bezahlte Leute, keine Idealisten))
Harald schrieb:> Das der PIC einen Defekt hat ist eh nicht zu vermuten. Gerade wenn es> brummt (Schwingungen) würde ich mir mal den Übergang zwischen den> Platinen SEHR genau ansehen.Bastler schrieb:> Aber bei einer neuen Maschine? Ich denke da eher an: Schwacher Prozessor> + sperriger Code durch schlechten Compiler = Brummen?
Ist das deine Antwort auf den Beitrag von Harald?
Du vermutest wieder viel zu viel ohne Ahnung zu haben. Tut mir leid,
dass ich das mal so hart sagen muss. Niemand mit Verstand im Kopf würde
so ein Ding in Massen mit einem zu schwachen Prozessor herstellen.
Abgesehen davon ist die Wahrscheinlichkeit, dass egal welcher PIC zu
schwach sei, sehr gering. Das hast du dir an den Haaren herbei gezogen.
Schlechte/beschädigte Lötstellen sind hingegen alltäglich.
Bastler schrieb:>> Es hilft dir gar nichts, den Mikrocontroller auszulesen, weil du dann>> Maschinencodes (einen Haufen Zahlen) bekommst - keinen Quelltext.> Das weiß ich, aber bei dem PIC hier wäre es wohl so wenig, dass ich ihn> vielleicht sogar verstehen könnte.
Dazu müsste man erst einmal den Mikrocontroller und seine Assembler
Sprache sehr gut kennen. Das ist bei dir nicht einmal Ansatzweise der
Fall. Wir haben dir bereits mehrfach gesagt, dass das reverse
Engineering von Maschinencode zu den kompliziertesten Aufgaben des
Hackings gehört. Nur wenige Menschen können das. Du ganz sicher nicht,
das erkenne ich schon an deiner langfristigen Herangehensweise. Du lebst
nicht mehr lange genug, um es zu erlernen. Also wenn die diese Sache
wichtig ist, dann bezahle jemanden dafür.
> Learning by doing ist eine gute Sache, nur wo fange ich da an??> Die Frage ist nur was ist einfach und ungefährlich genug...
Zum Beispiel, indem du dir einen Roboter-Bausatz besorgst, und den ohne
fremde Bibliotheken programmierst. Mit einem NiboBee kann man gut
anfangen. Auch im Arduino Umfeld gibt es brauchbares, aber da wird man
dazu verleitet, wie mit Bibliotheken zu machen ohne die Details zu
hinterfragen.
MaWin schrieb:> Du hast noch nie in Assembler programmiert und dir noch nie ein C> -Compilerlisting mit generierzem Assemblrrcode angesehen.
Selbstverständlich habe ich das, vermutlich etwa 30.000 - 50.000 Zeilen
in den verschiedensten Assemblern bis jetzt. Ich erspare dir die
Aufzählung der Typen.
Aber es ist die Mühe nicht wert. Nicht bei einer simplen
Spülmaschinenpumpe und nicht bei diesen Anforderungen an die
Geschwindigkeit. Der kleine Kerl langweilt sich bei sowas.
Was mich gerade eher shockiert oder wundert, je nach dem, die haben
offenbar keinen Sensor für den Wasserstand in die Maschine gebaut. Der
"Druckschalter" den ich für einen Wasserstandsmelder gehalten habe, ist
nur dafür da, zu messen ob die Sprüharmpumpe läuft und Druck aufbaut.
Desweiteren haben die die Hauptsteuerung so programmiert, dass die die
Ablaufpumpe einfach für eine festgelegte Zeit laufen lässt, und dann
IMMER davon ausgeht dass der Pumpensumpf dann leer ist. D.h. Sollte der
Ablaufschlauch verstopft sein, wird die Maschine danach trotzdem Wasser
zulaufen lassen, obwohl das alte noch drin ist, und das nicht merken, da
es kein Feedback gibt. Es besteht also ernsthafte
Überschwemmungsgefahr...
Und wie immer frage ich mich: Warum haben die das so gemacht? Kosten
sparen,
sonstiges? Und wie zum Geier kriegt sowas in einem Land in dem die
Gesetze schon viel ungefährlicheres verboten haben bitte eine Zulassung?
Leider kann man solche Senosren auch nicht nachrüsten, selbst wenn man
für das Teil eine Open Source Software hätte, der µC hat nämlich keine
Eingänge mehr frei. Man müsste also einen Multiplexer für diese Senosren
in die Maschine bauen, und über CAN mit der Hauptsteuerung kommunizieren
lassen.
Offenbar hast Du in Deinem Leben noch keine einzige ProgrammZeile
geschrieben. Die C-Syntax mag für den Laien sperrig oder sogar abstoßend
erscheinen, aber sie ist ERLERNBAR. Wenn Du schon an dieser
Einstiegshürde scheiterst, wird das nix mit "mal eben ein kleines
Progrämmchen schreiben" nix. Sieh das endlich ein!
Bastler schrieb:> dass die die> Ablaufpumpe einfach für eine festgelegte Zeit laufen lässt, und dann> IMMER davon ausgeht dass der Pumpensumpf dann leer ist.
Einen "Leer-Sensor" habe ich noch bei keiner Maschine gefunden.
"Füllmenge okay" hingegen schon.
Bastler schrieb:> Es besteht also ernsthafte Überschwemmungsgefahr...
Da gibt es viele Beispiele auch bei namhaften Maschinen...
Bastler schrieb:> Es besteht also ernsthafte Überschwemmungsgefahr...
Irgendwo wird schon ein Sensor sein, der das verhindert. Bei vielen
Waschmaschinen läuft die Pumpe auch nur für eine festgelegte Zeit. Wenn
die Maschine danach nicht leer ist, stoppt sie mit einem Fehlercode.
Ich habs ausprobiert, die merkt das wirklich nicht. Das Problem ist,
dass die ein Flügelrad hat, und im Prozessor festgelegt ist: Reed
kontakt muss
soundso oft schalten, dann ist eine Einheit Wasser drin, und der Stand
stimmt.
Zusätzlich ist ein Sensor verbaut, der prüft ob die Sprüharmpumpe (Die
mit dem PIC) Druck aufbaut oder nicht (Anscheinend Trockenlaufschutz)
ABER: Die Maschine geht beim Abpumpen so vor: Die Ablaufpumpe wird eine
gewisse Zeiteinheit eingeschaltet, ob Wasser drin ist, oder nicht.
Danach geht die Elektronik gnadenlos davon aus, dass die Maschine nun
leer sei, auch wen dem nicht so ist. Wenn nun also der Schlauch z.B.
verstopft ist, oder die Förderhöhe durch DAU zu hoch gewählt wurde, wird
die Maschine nicht leer, aber die Steuerung wird denken "Leer" und eine
weitere Einheit Wasser zulaufen lassen. Das hat dann aber zur Folge das
die Kiste überläuft, da keine zwei Einheitern Wasser in die Maschine
passen (Das weiß ich, ich mag mit Software in etwa so elegant sein wie
ein schwimmender Elefant, aber mit Hardware und Dingen in dieser
Richtung sieht das anders aus) Die Maschine wechselt das Wasser je
Programm immer drei Mal, das einzige was bei den unterschiedlichen
Programmen anders ist, ist die Dauer und aber das weiß ich noch nicht
sicher die Temperatur*. Es kann nun also theoretisch folgendes
passieren: DAU wählt höhe für den Ablauf zu hoch, Wasser wird beim
ersten mal wechseln nicht abgepumpt, Maschine lässt weiteres Wasser
rein. Dann wird gespült, Maschine pumpt wieder ab, denkt "Leer" und
lässt nochmals Wasser rein. Das gibt ne schöne mittlere Katastrophe beim
ersten und zweiten Mal nachfüllen.
*Was die Temperatur angeht: Ich weiß nicht ob die Steuerung überhaupt
einen Temperatursensor hat, es kann sein, dass die einfach nur die
Heizung mit einem Relais einschaltet, und ein blöder mechanischer
Bimetallschalter schaltet dann bei immer der selben Temperatur aus. Das
würde erklären, warum die eigentliche Heizung zwei Schalter hat: Einen
als Überhitzungsschutz, und einen als Schalter für die
Normalbetriebstemperatur. Das würde dann aber bedeuten, dass die Kiste
in allen Programmen nur ein und dieselbe Temperatur fahren kann.
Ich würde sowieso keine Relais mehr verwenden, wenn ich sowas bauen
wollte, sondern Transistoren, als was in Richtung SSD Relais, kein
Kontaktabbrand, und halten richtig dimensioniert vieeeel länger als
Relais, dazu klackern sie auch nicht, und ein-aus ein-aus ein-aus im
Sekundentakt macht ihnen auch nix. Nur was die kosten braucht man nicht
zu fragen...
Ich werde mich mit der Syntax von C befassen müssen, ob ich will oder
nicht, als Bastler muss man in der heutigen Zeit programmieren können,
und das wird in Zukunft nicht anders werden, die Elektronik wird immer
mehr, in jedem Bereich. Die Zeit der Mechanik als Regelung als man noch
Schaltwerke hatte ist einfach schon lange vorbei. Wenn das ganze nur
nicht immer so verdammt viel zu lernen wäre, auch wenn sich damit ein
gewaltiges Universum an neuen Möglichkeiten eröffnet.
@Bastler
Wenn demnächst abertausende Wohnungen überfluten oder ausgebrannt sind,
kann man Dich aufgrund Deiner tollen Dokumentation mal als
Sachverständigen empfehlen.
Selten so eine gute Analyse gesehen.
Weiter so!
Ralf X. schrieb:> Selten so eine gute Analyse gesehen.
100% ACK!
Bastler schrieb:> Wenn nun also der Schlauch z.B.> verstopft ist, oder die Förderhöhe durch DAU zu hoch gewählt wurde
Also ich habe noch nie von einem verstopften Spülmaschinenschlauch
gehört, packst Du Anrührbehälter nach dem Anrühren von Gips in die
Spülmaschine?
Die max. Förderhöhe definiert sich bei normalen Anwendern über die Länge
des mitgelieferten Schlauchs.
Im Übrigen gibt es auf der Hauptsteuerplatine noch einige Anschlüsse die
hoch interessant aussehen, siehe Anhänge. Der bei dem an einem Loch
"RST" steht könnte eine Art programmier oder Diagnoseleitung sein. Die
beiden anderen sind wohl für größere Spülmaschinen mit der selben
Steuerung gedacht, und sind dann für Hardware die dieser Zwerg nicht
hat. Aßerdem gibt es auf der anderen Seite der Platine noch zwei Jumper
(JMP1 und JMP2) die können anscheinend irgendwas konfigurieren, weiß
aber leider nicht was. Vielleicht kann man die Steuerung damit auch in
den Testmodus versetzen, aber wenns blöd geht könnte sie evtl auch hin
sein wenn ich die Jumper setze ohne zu wissen, wofür sie sind. Was mich
eher interessieren würde ist das "RX" und "TX" an dem "Diagnoseport"
aber ich hab leider keinen Logic Analyzer, und senden könnte ich der
Maschine auch nichts, selbst wenn ich das Protokoll und die Baudrate
kennen würde, da ich die Befehle nicht kenne. Dazu hat der
"Diagnoseport" noch weitere Beschricftung, aber was "FLMDO" oder "FLMD0"
und "X" bedeuten soll weiß ich wirklich nicht.
Hätte hätte Fahrradkette. Mit Vermutungen ohne Know-How und Equipment
kommst du nicht weiter. Wenn die das Ding so interessiert, dann
experimentiere damit, anstatt hier endlos deine ungeprüften Vermutungen
hin zu schreiben. Die helfen weder dir noch sonst jemandem.
Werde mir das mal versuchen näher anzusehen, auf der Rückseite von der
Platine sitzt ein D79F8513A, das ist der µC der das Ding steuert,
darüber hinaus ein EEPROM (24C02) Vielleicht ist die Firmware garnicht
im µC sondern im EEPROM gespeichert, ich weiß nicht mal ob der NEC Chip
überhaupt ein integriertes ROM hat, Datenblätter habe ich zu dem Ding
nicht gefunden, nur dass der wohl von NEC gebaut wurde. Frag mich
wirklich warum die nicht einfach einen STM32 oder STM8 nehmen hätten
können, zu denen gibts wenigstens eine ordentliche Dokumentation und man
kann ihn mit Programmiergeräten flashen und (Wenn nicht geschützt) die
keine 2000€ kosten. Aber nein, in sowas muss ja immer der seltenste Exot
sitzen den die gerade gefunden haben. Na immerhin kein Blobtop.
Bastler schrieb im Beitrag #64635
> Vielleicht ist die Firmware garnicht> im µC sondern im EEPROM gespeichert
Nein
> ein integriertes ROM hat, Datenblätter habe ich zu dem Ding> nicht gefunden, nur dass der wohl von NEC gebaut wurde. Frag mich> wirklich warum die nicht einfach einen STM32 oder STM8 nehmen hätten> können, zu denen gibts wenigstens eine ordentliche Dokumentation
What?
> kann ihn mit Programmiergeräten flashen und (Wenn nicht geschützt) die> keine 2000€ kosten.
USB-UART-TTL Kabel habe ich auch schon teilweise etwas günstiger
gefunden...
> Aber nein, in sowas muss ja immer der seltenste Exot> sitzen den die gerade gefunden haben.
Jaja, genau, alles Dummköpfe!
> Na immerhin kein Blobtop.
Wer oder was ist ein Bloptop?
Blobtops sind die schwarzen Kleckse die man in mancher Elektronik
findet, das sind im Grunde DIE´s die direkt auf die Platine gesetzt
werden, und dann mit einem Epoxyd Tropfen versiegelt werden. Man erkennt
sie gut als schwarze Hubbel auf Platinen, und sie sind der Alptraum
eines jeden Bastlers, da sie meistens aus hochproperitären DIE´s
bestehen, und in keinster weise Programmier oder modifizierbar sind.
Wenn die FW nicht in dem EEPROM sitzt, was dann? Es gibt nichts was
diese Maschine speichern kann, keine Uhrzeit oder Einstellungen, die
merkt sich beim Ausstecken rein garnichts, außer die hätte irgendwelche
versteckten Zähler, (Betriebsstunden, Zahl der Spülvorgänge) aber wozu
sollte man sowas zählen bei so einem Gerät, Garantie?
Bastler schrieb:> Blobtops sind ... der Alptraum eines jeden Bastlers
Komisch, ich habe von meinen Displays noch keine Albträume bekommen. Die
funktionieren prima, ohne Probleme.
Ok, wenn man wie du immer alles umprogrammieren will, ohne programmieren
zu können, dann hat man natürlich ein Problem. Lass die Geräte doch
einfach mal so, wie sie sind. Du wirst sehen, dass sich ohne deine
Eingriffe funktionieren.
Du meinst COB, hatte gerade bei Bloptop gerade ne völlig andere
Assoziation... komisch.
Warum sollte der uC ein ROM haben, wenn die ne Updateschnittstelle
draufsetzen. Der hat Flash, ganz normal. Hausspiel für Renesas.
Bastler schrieb:> hochproperitären DIE´s> bestehen, und in keinster weise Programmier oder modifizierbar sind.
Also ich hatte schon mit COB Designs zu tun, das hat meist Kostengründe,
die war nichts „hochproperitär“. Zu basteln gibt es da nichts, soll ja
auch nicht. Wenn nicht gefällt selber was bauen...
Bastler schrieb:> wozu> sollte man sowas zählen bei so einem Gerät, Garantie?
Hört doch alle mal auf mit diesem „geplante Obsoloszenz“-Quark, das
verblödet noch die ganze Menschheit. Das 24C02 wird Einstellungen
speichern, was sonst. Uhr wird mit im uC sein, falls benötigt.
Ich hatte nur gehofft, dass das Gehäuse einen Namen hat, so wie bei den
MOSFTEs z.B. TO220. Vielleicht weiß einer wie diese Gehäuseform
bezeichnet wird, dass es ein Printrelais ist, weiß ich, aber es muss
doch noch für diese Größe mit der Pinanordnung einen Namen geben? Das
wäre das erste Teil in Sachen Elektronik das mir begegnen würde, das
keinem Standard folgt.