Source file: /~heha/mb-iwp/Bergwerk/fba-fw-230825.zip/Radlader.cxx

#include "fba.h"
#include <avr/eeprom.h>	// EEMEM, Kalibrierwerte für Potenziometer sind dort

// Vorgabewerte für EEPROM ab Adresse 0
Eedata eemem EEMEM={
 0,		// lamps
 0xBA,		// Adresse für Pampelmuse, mglw. I²C-Slaveadresse
 {11,{	// Lenkkurve
  { 1200, 35},
  { 1300, 30},	// 100
  { 1540, 20},	// 240
  { 1740, 10},	// 200
  { 1920,  5},	// 180
  { 2108,  0},	// 188	230405: Geradeauslauf bei +0,8°: korrigiert
  { 2290, -5},	// 182
  { 2450,-10},	// 160
  { 2800,-20},	// 350
  { 3100,-30},	// 300
  { 3310,-35},	// 210
 }},
 {2,{	// Hubarm (230201)
  { 8985, 80},
  {19350,  0},
 }},
 {3,{	// Löffel (230201)
  { 1330,-60},
  {18013,  0},
  {29869, 40},
 }},
 2860,	// 288 mV @ 0 °C entspricht 288 mV ÷ 3,3 V × 32768 = 2860
 {0},	// Keine Steilheit wegen der Ungenauigkeit des Thermometers.
// Es zeigt sich eine erhebliche Abhängigkeit von der Spannung an ADC3!!
// Damit ist die Temperaturmessung auf diese Art eher für'n Arsch.
 {	// PID-Reglerkoeffizienten, bezogen auf 0,01° und 20 ms
//	Kp	Ki	Kd	Z		L		T   M
  {{  4,  4},{ 4, 4},{ 0, 0},{-40,30,-30,23},{ -32, 32, -32, 32}, 30,50},	// erst mal als Proportionalregler anfangen
  {{  0,  0},{64,64},{ 0, 0},{-11, 2,-11, 1},{-126,126,-126,126},  0,50},	// Fahrtregler
  {{-24,-24},{-2,-2},{ 0, 0},{-45,40,-25,26},{  -2, 16,  -2, 16}, 50,50},	// Arm
  {{-16,-16},{-2,-2},{ 0, 0},{-35,15,-25,10},{  -4,  4,  -4,  4}, 40,50},	// Löffel
 },
 {// Odometrie
  {-33,33},	// Maximale Fahrgeschwindigkeiten in cm/s (zurück, vorwärts)
  8346,		// onestep: 0,1 µm pro Tachotick (gemessen 230222: 0,8346 mm/Tick)
  {1777,2996,4223,4876}	// q = Winkeländerung pro Schritt für 10°, 20°, 30° und 35°
 }
};

/* Messdaten Kreisfahrt 230405: Wendekreis-Umfänge in Meterzählerticks
╔═══════╤═══════════════╦═══════╤═══════════════╦═══════╤═══════╤═══════╗
║Knick	│ vorwärts	║Knick	│ vorwärts	║ Mitte	│ q	│ q°/λ	║
╟───────┼───────┬───────╫───────┼───────┬───────╫───────┼───────┼───────╢
║-35°	│ 3324	│ 3340	║+35°	│ 3524	│ 3575	║ 3441	│ 4876	│ 139	║
║-30°	│ 3980	│ 3986	║+30°	│ 3949	│ 3978	║ 3973	│ 4223	│ 141	║
║-20°	│ 5520	│ 5452	║+20°	│ 5684	│ 5743	║ 5600	│ 2996	│ 150	║
║-10°	│10027	│10062	║+10°	│ 8865	│ 8817	║ 9443	│ 1777	│ 178	║
║- 5°	│-	│-	║+ 5°	│18735	│-	║-	│  895	│ 179	║
╚═══════╧═══════╧═══════╩═══════╧═══════╧═══════╩═══════╧═══════╧═══════╝
q = Winkeländerung Δα pro festgestelltem Schritt vom Motor,
    ist erwartungsgemäß gut lenkwinkel-proportional,
    dürfte aber sehr von der Beladung abhängen.
*/
Detected encoding: UTF-80