Das meinte ich:
Hallo Besucher, der Thread wurde 12k mal aufgerufen und enthält 39 Antworten
letzter Beitrag von SuperIlu am
Programmierer für ein kleines Anzeigefenster mit Werten der COM-Schnittstelle gesucht
- Brotboxfan
- Erledigt
-
-
Er schreibt sauber. Danke.
Nur muss ich jedes mal das Fenster tippen, um die aktuellen Werte angezeigt zu bekommen -
Deine Fehlerbeschreibung sagt mir leider nix.
Aber selbst wenn: Ohne nen Ofen zum testen endet meine Moeglichkeit der Fehleranalyse hier auch so ziemlich...
-
Er meint den refresh. Der sollte zyklisch von alleine stattfinden in kurzen Intervallen.
-
Das was ich hingeschrieben habe "sollte" das erfuellen. Falls es das nicht tut kann ich aus der ferne leider nichts dran aendern. Dafuer fehlen mir zuviele Details (Ausstattung des PC, liegts am COM-Port oder an was anderem, etc).
Ich hab mal ne Version mit auf 10 Frames/Sekunde begrenzter Framerate gemacht:
C- // https://www.java.com/en/download/
- import processing.serial.*;
- Serial myPort; // Create object from Serial class
- PFont myFont; // The display font
- String inString; // Input string from serial port
- int lf = 10; // Linefeed in ASCII
- void setup() {
- size(800, 600);
- myPort = new Serial(this, "COM4", 115200);
- myFont = loadFont("Courier-Bold-48.vlw");
- textFont(myFont, 48);
- background(0);
- frameRate(10);
- }
- String[] names = {
- "Time ",
- "Temp0 ",
- "Temp1 ",
- "Temp2 ",
- "Temp3 ",
- "Set ",
- "Actual",
- "Heat ",
- "Fan ",
- "ColdJ ",
- "Mode "
- };
- void txtOut(int i, String[] parts) {
- text(names[i]+" = "+parts[i].trim(), 10, 55+(i++*50));
- }
- void draw() {
- fill(200);
- stroke(200);
- if (myPort.available() > 0) {
- inString = myPort.readStringUntil(lf);
- if (inString != null) {
- String[] parts = split(inString, ",");
- if (parts.length == names.length) {
- background(0);
- for (int i = 0; i < parts.length; i++) {
- txtOut(i, parts);
- }
- }
- }
- }
- }
-
Das was ich hingeschrieben habe "sollte" das erfuellen. Falls es das nicht tut kann ich aus der ferne leider nichts dran aendern. Dafuer fehlen mir zuviele Details (Ausstattung des PC, liegts am COM-Port oder an was anderem, etc).
Ich hab mal ne Version mit auf 10 Frames/Sekunde begrenzter Framerate gemacht:
C- // https://www.java.com/en/download/
- import processing.serial.*;
- Serial myPort; // Create object from Serial class
- PFont myFont; // The display font
- String inString; // Input string from serial port
- int lf = 10; // Linefeed in ASCII
- void setup() {
- size(800, 600);
- myPort = new Serial(this, "COM4", 115200);
- myFont = loadFont("Courier-Bold-48.vlw");
- textFont(myFont, 48);
- background(0);
- frameRate(10);
- }
- String[] names = {
- "Time ",
- "Temp0 ",
- "Temp1 ",
- "Temp2 ",
- "Temp3 ",
- "Set ",
- "Actual",
- "Heat ",
- "Fan ",
- "ColdJ ",
- "Mode "
- };
- void txtOut(int i, String[] parts) {
- text(names[i]+" = "+parts[i].trim(), 10, 55+(i++*50));
- }
- void draw() {
- fill(200);
- stroke(200);
- if (myPort.available() > 0) {
- inString = myPort.readStringUntil(lf);
- if (inString != null) {
- String[] parts = split(inString, ",");
- if (parts.length == names.length) {
- background(0);
- for (int i = 0; i < parts.length; i++) {
- txtOut(i, parts);
- }
- }
- }
- }
- }
Super, genau dass war es !!!
Jetzt sieht man sofort jede Temperaturveränderung.
Vielen DankDann werde ich mal ein paar lecker RealPLAs in den Ofen tun.
Alle Umbauten zum Pimpen des Ofens habe ich ja jetzt fertig: https://github.com/UnifiedEngi…g/T-962-improvements/wiki
-
Dann werde ich mal ein paar lecker RealPLAs in den Ofen tun.
prima, dann wars ja fuer nen guten zweck
fuer einen RealPLA mach ich dir sogar ne grafische anzeige rein *g*
-
Was kann man da noch grafisch machen?
Das einzige, was mir einfällt, dass man die Werte Heat und Fan als 10 Kästchen Anzeige macht. Immer 25 als ein Block oder X.
Wie so eine LED Balkenanzeige. -
Hab mal in Deutsch gemacht.
Sieht spitze aus. -
Muss mal naiv fragen: Ist das ein Härteofen? Oder warum tut man PLAs da rein?
-
Das ist ein kleiner chinesischer Reflow Lötofen T-962, 32cm Breite, 30cm Tiefe und 20cm Höhe.
Passt in ein Ikea- Regal.Ich trage Lotpaste auf, bestücke die Bauteile (SMD) und ab in den Ofen.
Dann nur noch den Stiftsockel anlöten und Programmieren.
Fertig sind ein paar RealPLA Black Edition! -
Ah verstehe. Paste auf Platine, Bauteile drauf. Paste schmelzen im Ofen, härten lassen und fertig.
Wie ist das dann mit Leiterbahnen? Schmiert man die nicht mit Paste zu? Oder ist die paste allein das leit medium?
Du siehst hier fragt jemand mit null Hardware Ahnung.
-
Schau dir mal die Platine richtig an. Es sind nur die Lötpunkte ohne Lötstoplack. Da kommt auch die Paste drauf.
Der Rest ist schöne farbige Platine.
Die Leiterbahn ist darunter. -
Ah! Punktweise gesetzte Paste. Beim Lötkolben arbeitet man ja auch punktweise.
Vielen Dank für die Nachhilfe. -
Ich trage Lotpaste auf,
wie arbeitest du? edelstahlmaske und siebdruck oder mit lotpaste aus der spritze?
wir haben in meiner alten firma mal prototypen mit ~130 bauteilen handbestueckt und dann in einem severin kuechengrill mit vorgeschaltetem steuergeraet reflowgeloetet *g*
-
wie arbeitest du? edelstahlmaske und siebdruck oder mit lotpaste aus der spritze?
wir haben in meiner alten firma mal prototypen mit ~130 bauteilen handbestueckt und dann in einem severin kuechengrill mit vorgeschaltetem steuergeraet reflowgeloetet *g*Für die RealPLA und die EasyFlash3 Platinen habe ich Edelstahlmasken.
Die anderen Sachen mache ich entweder mit dem Lapset-M Dispenser https://www.buerklin.com/de/ka…-M-Dispenser-L562100.html
oder Kleinigkeiten mit dem Kleinen elektronischen http://wordpress.mencinger.biz/ -
Nur als kleiner Tipp am Rande: Wenn dir ja die Sollwerte (-Bereiche) bekannt sind lass Dir doch den Ist-Wert farblich codiert ausgeben, sprich:
grün: alles ok
orange: innerhalb der letzten 10% zum Grenzwert.
Rot: Sollwert verletzt.Programmiertechnisch nicht schwer und du musst nicht mehr nach den exakten Werten gucken- ein kurzer Blick , ah, alles Grün, ok.
Als Komfortfunktion dann dass auch ein kurzes Verlassen des Sollbereiches dauerhaft angezeigt wird, Sprich eine zusätzliche Zeile mit Orange oder Rotem "Temperaturverletzung" - dann musst du nicht ständig draufgucken und erhältst eine Zusammenfassung ob den kompletten Vorgang über alles im Lot war. -
...oder bei Überschreiten der Grenze das ASCII-Zeichen "BEL" ausgeben (Code 7).
-
...oder bei Überschreiten der Grenze das ASCII-Zeichen "BEL" ausgeben (Code 7).
Ich bezweifle, dass das in den modernen Programmiersprachen / Windows Oberflächen noch etwas zu hören ist wie unter DOS.
Wobei...in der Kommandozeile vielleicht schon, hab's nie ausprobiert. -
Och, mit Processing kann man WAV, MP3, whatever abspielen.
Da bricht die Hoelle los wenn gewuenscht