/beta/Code Redesign killagreg/fc.c |
---|
1987,8 → 1987,16 |
if(GyroIFactor) IPartNick += PPartNick - StickNick; // I-part for attitude control |
else IPartNick += DiffNick; // I-part for head holding |
LIMIT_MIN_MAX(IPartNick, -(STICK_GAIN * 16000L), (STICK_GAIN * 16000L)); |
NickMixFraction = (ParamSet.GyroStability * DiffNick)/8 + (IPartNick / Ki); // PID-controller for nick |
// PID-controller for nick |
if(ParamSet.GyroStability <= 8) |
{ |
NickMixFraction = (ParamSet.GyroStability * DiffNick) / 8; |
} |
else |
{ // avoid overflow |
NickMixFraction = ((ParamSet.GyroStability/2) * DiffNick) / 4; // PID-controller for nick |
} |
NickMixFraction += IPartNick / Ki; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Roll-Axis |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
1996,7 → 2004,16 |
if(GyroIFactor) IPartRoll += PPartRoll - StickRoll; // I-part for attitude control |
else IPartRoll += DiffRoll; // I-part for head holding |
LIMIT_MIN_MAX(IPartRoll, -(STICK_GAIN * 16000L), (STICK_GAIN * 16000L)); |
RollMixFraction = (ParamSet.GyroStability * DiffRoll)/8 + (IPartRoll / Ki); // PID-controller for roll |
// PID-controller for roll |
if(ParamSet.GyroStability <= 8) |
{ |
RollMixFraction = (ParamSet.GyroStability * DiffRoll)/8; |
} |
else |
{ // avoid overflow |
RollMixFraction = ((ParamSet.GyroStability/2) * DiffRoll)/4; |
} |
RollMixFraction += IPartRoll / Ki; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Limiter |
/beta/Code Redesign killagreg/libfc1284.a |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/beta/Code Redesign killagreg/libfc644.a |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/beta/Code Redesign killagreg/makefile |
---|
5,12 → 5,12 |
F_CPU = 20000000 |
#------------------------------------------------------------------- |
VERSION_MAJOR = 0 |
VERSION_MINOR = 81 |
VERSION_PATCH = 2 |
VERSION_MINOR = 82 |
VERSION_PATCH = 0 |
VERSION_SERIAL_MAJOR = 11 # Serial Protocol Major Version |
VERSION_SERIAL_MINOR = 0 # Serial Protocol Minor Version |
NC_SPI_COMPATIBLE = 15 # SPI Protocol Version |
NC_SPI_COMPATIBLE = 16 # SPI Protocol Version |
#------------------------------------------------------------------- |
#OPTIONS |
/beta/Code Redesign killagreg/spi.c |
---|
378,7 → 378,7 |
GPSInfo.Speed = FromNaviCtrl.Param.Byte[3]; |
GPSInfo.HomeDistance = FromNaviCtrl.Param.Int[2]; |
GPSInfo.HomeBearing = FromNaviCtrl.Param.sInt[3]; |
PPM_in[MAX_CHANNELS-1] = (int16_t)FromNaviCtrl.Param.Byte[8]; // WP_EVENT-Channel |
PPM_in[MAX_CHANNELS-1] = (int16_t)FromNaviCtrl.Param.Byte[8]; // WP_EVENT-Channel-Value |
break; |
default: |
/beta/Code Redesign killagreg/version.txt |
---|
416,15 → 416,21 |
- bei I2C-Fehlern wurden die Counter zurück gesetzt und für einige ms die Interrupts angehalten - das ist jetzt behoben |
- Nur I2C-Daten senden, wenn das alte Paket komplett raus ist |
0.81b H.Buss + I.Busker 27.10.2010 |
0.82a H.Buss 08.11.2010 |
- MotorSafetySwitch - Verriegelt das Ein/Ausschalten |
- ServoManualControlSpeed - Verlangsamt das Cam-Servo |
- CamOrientation - für verdrehte Kamera-Servos |
- Position der Status-Bits verändert |
- "Zucken" der Servos bei kurzen Empfangsausfällen behoben |
- jeti update command 'j' added |
- Poti-Auswertung nach ParameterZuordnung() verschoben -> FC-Code schneller |
- Waypont-Events z.B. zum Triggern der Kamera |
- Gyro-Sytbility: Werte bis 16 möglich |
Anpassungen bzgl. V0.81b |
G.Stobrawa 1.11.2010 |
Anpassungen bzgl. V0.82 |
G.Stobrawa 9.11.2010 |
- Code stärker modularisiert und restrukturiert |
- viele Kommentare zur Erklärug eingefügt |