// *******************************************
// Wattgovernor.nqc
// Remco Leine, September 2004
// *******************************************

// sensors
#define ANGLE SENSOR_1

// motors
#define MOTOR OUT_A

// other constants
#define KU 4
#define KL 1
#define ANGLEBAR 15

int M;

task main()
{
// configure sensor
SetSensor(ANGLE, SENSOR_ROTATION);
ClearSensor(ANGLE);
SetPower(MOTOR,0);
OnFwd(MOTOR);
while(true)
{
M = (KU*(ANGLEBAR - abs(ANGLE)))/KL;
if (M<0) M=0;
if (M>7) M=7;
SetPower(MOTOR,M);
}
}