TurretHopper::TurretHopper() : Subsystem("TurretHopper") {
	altitude = new Jaguar(5);
	feeder = new DoubleSolenoid(1,2);
	feeder->Set(DoubleSolenoid::kReverse);
	
	comp = new Compressor(1,1);
	comp->Start();

	pot = new AnalogChannel(1,1);
	accel = new ADXL345_I2C(1);
	
	SmartDashboard::PutNumber("Tilt Angle", GetTiltAngle());
	SmartDashboard::PutNumber("Potentiometer", GetPotAngle());
}
Example #2
0
void HeadMotion::MoveByAngle(double AlphaPan, double AlphaTilt) {
	m_headInstance->m_Joint.SetEnableHeadOnly(true, true);

	double ChangeAngleTilt = ABS((GetTiltAngle() - AlphaTilt));
	double ChangeAnglePan = ABS((GetPanAngle() - AlphaPan));

	if (ChangeAngleTilt / 2 <= 60 && ChangeAnglePan / 2 <= 75) {
		m_headInstance->MoveByAngle(AlphaPan, AlphaTilt);

		//cout<<"angle  = "<<MAX(ChangeAngleTilt,ChangeAnglePan)<<"\n";

		usleep(
				(int) (USLEEP_FOR_ONE_ANGLE__MOVING_HEAD
						* MAX(ChangeAngleTilt,ChangeAnglePan)));
	} else {
		m_headInstance->MoveByAngle(AlphaPan, AlphaTilt);

		//cout<<"angle  = "<<MAX(ChangeAngleTilt,ChangeAnglePan)<<"\n";

		usleep((int) USLEEP_FOR_ONE_ANGLE__MOVING_HEAD * 70);
	}

}