Schwerpunkt Waage mit Arduino

kalle123

User
Entschuldige bitte, dass wir gefragt haben ...

Das ganze Teil mal auf den Kopf stellen und die Unterseite zu fotografieren scheint ja doch zu schwer zu sein. ;)

Nebenbei, wie schwer ist der Rahmen denn?

Gruß KH
 

Mc_Fly

User
Hey, einfach kann jeder! ;)

Das Gerödel wiegt ca. 1,2 kg komplett. Verwende 3x 1kg LCs, da meine Flieger meistens < 1kg sind.
Jetzt von unten
A7B73C38-5D6F-4E7B-93B9-BF58FA9E71EB.jpeg

und das Gewicht
E2EA711D-30CE-4AA6-9A4D-3DDA687516C6.jpeg
 

udill

User
Hallo Martin,

da musst du oben die Stangen weg machen. Sonst wird das nichts. Dadurch dass du oben und unten eine Verbindung hast, wird das ganze zu einer starren Einheit. Deshalb bekommst du ja auch als Ergebnis "NAN" = Nichts. Außerdem geht deinen Wiegezellen die Puste aus, wenn du ein Modell auflegst, da ja schon ein Großteil des Wiegebereichs der Zellen durch die Mechanik belegt ist.

Gruß Udo

Hey, einfach kann jeder! ;)

Das Gerödel wiegt ca. 1,2 kg komplett. Verwende 3x 1kg LCs, da meine Flieger meistens < 1kg sind.
Jetzt von unten
Anhang anzeigen 2280039

und das Gewicht
Anhang anzeigen 2280038
 

Mc_Fly

User
Hallo Udo,

ich kann dir nicht ganz folgen. Dachte, wenn ich 3 LCs á 1kg verwende, dann bleiben mir doch noch ‚satte’ 1,8 kg für den Wiegebereich oder wie kalkulierst du für deine Modelle?
Beim Rahmen war ich der Meinung, dass das das Prinzip der Plattformwaage ist. Die Kugelköpfe sind die Gelenke zum Untergrund.
Ok, werde die oberen Traversen entfernen, Testen und berichten....

Gruß
Martin
 

udill

User
Hallo Martin,

ich kann dir nicht ganz folgen. Dachte, wenn ich 3 LCs á 1kg verwende, dann bleiben mir doch noch ‚satte’ 1,8 kg für den Wiegebereich oder wie kalkulierst du für deine Modelle?

nix für ungut, aber dein massiven Aufbau ist für Modelle ab einem Gewicht von > 5kg interessant. Dann brauchst du auch Wiegezellen von 5kg aufwärts. Bei kleinen Modellen mit schmalen Rümpfen, würde ich auf eine Waage aus dem 3-D Drucker abzielen, wie sie hier schon ausgiebig vorgestellt wurden. Anbei noch eine Variante, die auch mit deiner Elektronik arbeitet.

Gruß Udo

Alu_Waage_01.jpg

Alu_Waage_02.jpg

Alu_Waage_03.jpg
 

udill

User
Hallo Martin,

was mir gerade aufgefallen ist. Meines Wissens muss der Pfeil der Wiegezelle nach unten zeigen ;)

Gruß Udo

Bildschirmfoto vom 2020-04-02 19-43-55.png
 

Mc_Fly

User
Hallo Udo,

meines Wissens zeigt der Pfeil die Belastungsrichtung an - ich meine die auch schon mal gedreht zu haben, brachte aber nix...
So, habe gerade meine Werte aus der Einzelkalibrierung nochmal neu eingegeben:

20:12:53.197 -> CG scale by M.Lehmann - V2.0
20:12:53.234 ->
20:12:53.234 -> 1 - Set number of load cells (3)
20:12:53.273 -> 2 - Set distance X1 (30.00mm)
20:12:53.318 -> 3 - Set distance X2 (245.00mm)
20:12:53.318 -> 4 - Set distance X3 (160.06mm)
20:12:53.361 -> 5 - Set reference weight (500.00g)
20:12:53.419 -> 6 - Set reference CG (98.90mm)
20:12:53.419 -> 7 - Start autocalibration
20:12:53.465 -> 8 - Set calibration factor of load cell 1 (1993.80)
20:12:53.534 -> 9 - Set calibration factor of load cell 2 (2068.03)
20:12:53.568 -> 10 - Set calibration factor of load cell 3 (832.38)
20:12:53.650 -> 11 - Set value of resistor R1 (20000.00ohm)
20:12:53.650 -> 12 - Set value of resistor R2 (10000.00ohm)
20:12:53.736 -> 13 - Set battery type (OFF)
20:12:53.736 -> 14 - Set number of battery cells (2)
20:12:53.783 -> 15 - Show actual values
20:12:53.783 -> 16 - Show WiFi network info
20:12:53.821 -> 17 - Reset to factory defaults
20:12:53.867 ->
20:12:53.867 ->
20:12:53.867 -> Please choose the menu number:
20:13:14.853 ->

Und jetzt das Ergebnis:
20:13:14.853 -> Please put the reference weight on the scale.
20:13:14.897 -> Start auto calibration (J/N)?
20:13:21.941 ->
20:13:21.941 -> Autocalibration is running.....................done
20:13:25.146 ->
20:13:25.146 ->
20:13:25.146 -> ********************************************
20:13:25.199 -> CG scale by M.Lehmann - V2.0
20:13:25.199 ->
20:13:25.199 -> 1 - Set number of load cells (3)
20:13:25.247 -> 2 - Set distance X1 (30.00mm)
20:13:25.300 -> 3 - Set distance X2 (245.00mm)
20:13:25.300 -> 4 - Set distance X3 (160.06mm)
20:13:25.334 -> 5 - Set reference weight (500.00g)
20:13:25.368 -> 6 - Set reference CG (98.90mm)
20:13:25.402 -> 7 - Start autocalibration
20:13:25.436 -> 8 - Set calibration factor of load cell 1 (nan)
20:13:25.470 -> 9 - Set calibration factor of load cell 2 (2693.55)
20:13:25.539 -> 10 - Set calibration factor of load cell 3 (nan)
20:13:25.607 -> 11 - Set value of resistor R1 (20000.00ohm)
20:13:25.641 -> 12 - Set value of resistor R2 (10000.00ohm)
20:13:25.683 -> 13 - Set battery type (OFF)
20:13:25.683 -> 14 - Set number of battery cells (2)
20:13:25.716 -> 15 - Show actual values
20:13:25.763 -> 16 - Show WiFi network info
20:13:25.801 -> 17 - Reset to factory defaults
20:13:25.836 ->
20:13:25.836 ->
20:13:25.836 -> Please choose the menu number:

Hier sieht man, dass der Biegebalken sich frei bewegen kann:
LC vorne li.jpg

Hier mit den geeichten 500g:
CG scal von oben.jpg

Ich versteh's nicht.....
confused.gif


Gruß Martin
 

skyfreak

User
martin schick mir mal eine PN mit whatsapp kontakt, dann können wir mal quatschen
ich meine dein aufbau kann nicht funktionieren
 

Robinhood

Vereinsmitglied
CG Waage "jochen69-style" fertig

CG Waage "jochen69-style" fertig

Angeregt durch Jochens Alukonstruktion ist meine Version vor ein paar Tagen fertig geworden. Die 3D-Druckteile habe ich alle neu konstruiert, weil die Maße der Aluschienen mal nicht gepaßt haben, mal mein alter Dinosaurier-Drucker die Druckteile mit Support nicht hinbekommen hat usw. Als Sketch kommt der CG_scale_RCN von Olav Kallhovd zum Einsatz (im Datenpaket von Tobias Reik enthalten). Vorne arbeitet eine 5kg LC, hinten eine 10kg. Was mich erstaunt hat: Die Waage misst ein 500g-Tariergewicht mit minimaler Abweichung fast genau so akkurat wie 10kg. Der Fox auf dem Bild hat 9,2kg.

K800_IMG_3216.JPG

Da die Waage längenverstellbar ist, würde ich mir eine Möglichkeit wünschen, den Wert für die Distanz zwischen den Auflagepunkten variieren zu können, z.B. durch Tasten. Momentan flashe ich den Arduino Nano immer neu mit einem korrigierten Sketch, wenn ich die Auflagen verschiebe, was natürlich sehr unelegant ist. Ich bin beim Programmieren ein absoluter Nicht(s)könner. Deshalb meine Frage an die Profis hier im Team: Wie kann eine variable Distanz realisiert werden?

Hier ein Ausschnitt aus dem Standardsketch für den festen Abstand:

Sketch Schnipsel.JPG

Der markierte Wert sollte veränderbar sein. Any ideas?
 

kalle123

User
Hi Robin, ich hab so was mit den variablen Werten vor nem Jahr mal gemacht.

Die Elektronik sieht so aus.

Xt4RGJ6l.png


2 LCs, Nano und LCD 1602. Mit der roten Taste schiebst du den geänderten Wert ins Eeprom des Nanos, die beiden scharzen Tasten sind für +/- und der Jumper bestimmt, ob du den Abstand oder die Kalibrierwerte der LCs ändern willst.

Häng den Code hier mal als Text an. Kann dich da gerne bedienen, so kompliziert ist das nicht. :)

Gruß KH, der auch keine große Ahnung vom Programmieren hat.
 

Anhänge

  • CG_SCALE_v0.9.txt
    9,2 KB · Aufrufe: 184

Robinhood

Vereinsmitglied
Danke Kalle, geht schon ganz klar in die Richtung!
Hättest Du auch das Verdrahtungsschema für uns, z.B. fritzing? Ich habe aus dem Sketch beim schnellen Durchsehen keine Info gefunden (oder ich habe es übersehen). Merci schon mal!
 

kalle123

User
Robin, damit hab ich mich mal vor nem Jahr beschäftigt, bei mir laufen hier z.Z. andere Projekte.

Aber ich hab mal kurz drüber geschaut.

LCD

LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7); // PCF8754 - 0x27, PCF8754A - 0x3F !

Loadcells

// HX711 constructor (dout pin, sck pin)
HX711_ADC LoadCell_1(A1, A0); // HX711 Front LC
HX711_ADC LoadCell_2(A3, A2); // HX711 Rear LC

Taster

digitalRead(2) save dist value to eeprom

digitalRead(3) increase dist value

digitalRead(4) decrease dist value

Jumper

und wenn ich mit dem Jumper die Cal. values anwähle, kann ich die mit den Tasten diese auch ändern.

digitalRead(5) LC1 Cal.value

digitalRead(6) LC2 Cal.value

Und die ganzen Sachen gehen ins Eeprom und somit sind die Werte (Abstand und Cal values) auch nach dem Ausschalten noch da.

Die ganze Doku steht im Code schon drin :)

Also mach dran.

Hier noch ein Bildchen (ich nehm 10k Widerstände)

https://i0.wp.com/www.the-diy-life.com/wp-content/uploads/2019/05/Multiple-Push-Buttons-On-Multiple-Arduino-Digital-Inputs.jpg?ssl=1


Den Fritzing Plan kannst du dir jetzt selber malen.

cu KH
 

Space

User
Hallo Udo,

meines Wissens zeigt der Pfeil die Belastungsrichtung an - ich meine die auch schon mal gedreht zu haben, brachte aber nix...
So, habe gerade meine Werte aus der Einzelkalibrierung nochmal neu eingegeben:

20:12:53.197 -> CG scale by M.Lehmann - V2.0
20:12:53.234 ->
20:12:53.234 -> 1 - Set number of load cells (3)
20:12:53.273 -> 2 - Set distance X1 (30.00mm)
20:12:53.318 -> 3 - Set distance X2 (245.00mm)

--schnipp---

Ich versteh's nicht.....
confused.gif


Gruß Martin​


Die Wiegezelle ist schon richtig herum eingebaut.

Wenn du permanent eine 0 angezeigt bekommst, vermute ich kein mechanisches Problem. So hart kann keine Mechanik sein, also das die Wiegezelle nicht doch minimal "verbogen" wird.
Ich hatte anfangs ähnliche Probleme. Geholfen hat das Neuprogrammieren des ESP8266. Vermutung: Ich hatte anfangs Probleme mit der Kommunikation zu den A/D Messwandlern. Ich habe trotzdem auf "Tara" gedrückt und es wurden unerlaubte Werte im Flash abgelegt. Flash löschen allein,hat bei mir nicht geholfen bzw. der Lösch-Dialog stockte.​
 

Robinhood

Vereinsmitglied

Robin, damit hab ich mich mal vor nem Jahr beschäftigt, bei mir laufen hier z.Z. andere Projekte.

Aber ich hab mal kurz drüber geschaut.

LCD

LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7); // PCF8754 - 0x27, PCF8754A - 0x3F !

Loadcells

// HX711 constructor (dout pin, sck pin)
HX711_ADC LoadCell_1(A1, A0); // HX711 Front LC
HX711_ADC LoadCell_2(A3, A2); // HX711 Rear LC

Taster

digitalRead(2) save dist value to eeprom

digitalRead(3) increase dist value

digitalRead(4) decrease dist value

Jumper

und wenn ich mit dem Jumper die Cal. values anwähle, kann ich die mit den Tasten diese auch ändern.

digitalRead(5) LC1 Cal.value

digitalRead(6) LC2 Cal.value

Und die ganzen Sachen gehen ins Eeprom und somit sind die Werte (Abstand und Cal values) auch nach dem Ausschalten noch da.

Die ganze Doku steht im Code schon drin :)

Also mach dran.

Hier noch ein Bildchen (ich nehm 10k Widerstände)

https://i0.wp.com/www.the-diy-life.com/wp-content/uploads/2019/05/Multiple-Push-Buttons-On-Multiple-Arduino-Digital-Inputs.jpg?ssl=1


Den Fritzing Plan kannst du dir jetzt selber malen.

cu KH

Danke, damit komme ich weiter ;)
 

Robinhood

Vereinsmitglied
@robinhood


Schau dir mal den Sketch von nightflyer88 an. Die da findest du, wie was du suchst.

Hallo pantau,
ich möchte nicht auch noch in die WLAN-Thematik einsteigen, bin mit der "offline"-Variante mental schon fast an der Grenze ;). Aber ich habe gerade die Version von udill (Udo) ausgegraben, die macht das auch. Und Udo hat eine sehr schöne Anleitung für Dummies dazu geschrieben :cool:
Den Sketch später auf OLED ändern wird die nächste Herausforderung.
 

Robinhood

Vereinsmitglied
Danke Dir Udo! Mein Nano V3 sieht zwar etwas anders aus, aber damit dürfte ich es dennoch hinbekommen. Den LM7805 brauche ich beim Nano ja nicht.
 

udill

User
Hallo Robin,

hier kannst du dir den Nano V3 mit seinen PINs anschauen. Wenn du genau auf den Plan guckst, siehst du am LCD-Display die beiden Leitungen (gelb und grün) die an die PINs A4 und A5 des Nano gehen. Das ist das I2C-Interface und diese PINs gibt es auch bei deinem Nano V3. Musst sie nur richtig rum anschließen, sonst bleibt das Display dunkel ;)

Gruß Udo
 
Ansicht hell / dunkel umschalten
Oben Unten