12 #ifndef CARMA_ANTENNA_BIMA_DRIVECONTROL_H
13 #define CARMA_ANTENNA_BIMA_DRIVECONTROL_H
15 #include "carma/antenna/bima/control/bimaDriveControl.h"
16 #include "carma/corba/corba.h"
81 void setTolerance(
float arcsec );
86 void setTiltmeterZero(
float aftForward,
float leftRight);
88 void setAperturePointingConstants(
90 float azOffset,
float elOffset,
float sag);
112 long elMin,
long elMax);
131 void setNextSequenceNo( CORBA::ULong seq );
138 void setAzel(
double az,
double el, CORBA::ULong seq);
143 void setAz(
double az, CORBA::ULong seq);
147 void setAz(
double az);
154 void setEl(
double el, CORBA::ULong seq);
158 void setEl(
double el);
166 long azRate,
long elRate);
173 const ::carma::antenna::common::DriveControl::RaDecTriplet & positionTriplet,
175 CORBA::Boolean overTheTop,
182 const ::carma::antenna::common::DriveControl::RaDecEpoch & position,
185 void updateWeather(
float ambientTemp,
float barometricPressure,
186 float relativeHumidity,
float dewpoint,
187 float windSpeed,
float windDirection);
189 void setMountOffset(
double az,
double el, CORBA::ULong seq);
191 void setAzMountOffset(
double az, CORBA::ULong seq);
193 void setElMountOffset(
double el, CORBA::ULong seq);
197 void setAzMountOffset(
double az );
199 void setElMountOffset(
double el );
203 void setOffset(
double az,
double el, CORBA::ULong seq);
228 void setPointingModelCoefs(
229 const ::carma::antenna::bima::control::DriveControl::sequence_double& dazCoefs,
230 const ::carma::antenna::bima::control::DriveControl::sequence_double& delCoefs);
232 void setSafeRange(
float azLow,
float azHigh,
233 float elLow,
float elHigh);
236 static const std::string className_;
237 log4cpp::Category &log_;
240 std::string antenna_;
241 carma::antenna::bima::SharedMemory *bimaShm_;
252 #endif // CARMA_ANTENNA_BIMA_DRIVECONTROL_H
void setAntLocation(double longitude, double latitude, double altitude)
Set the antenna location (absolute)
~DriveControlImpl()
Destructor.
Implementation class for DriveControl idl.
void setElMaxRate(float elRate)
Sets the maximum elevation drive rate that can be requested.
void setMaxRate(float azRate, float elRate)
Set maximum drive rate that can be requested by the drive sytem software.
void setAzel(double az, double el, CORBA::ULong seq)
Go to requested Az/El.
void setSlewRate(unsigned long axes, long azRate, long elRate)
Set the slew rate.
void setEncoderLimits(long azMin, long azMax, long elMin, long elMax)
Set encoder limits.
void trackWind()
Minimize antenna profile to heavy wind.
void stow(carma::antenna::common::DriveControl::Position position, CORBA::ULong seq)
Stow antenna.
void setAzMaxRate(float azRate)
Sets the maximum azimuth drive rate that can be requested.
void setAz(double az, CORBA::ULong seq)
Go to requested Az.
Aperture
Enumerate apertures to use for selecting pointing models.
void updateRaDec(const ::carma::antenna::common::DriveControl::RaDecEpoch &position, carma::antenna::common::DriveControl::AzWrapMode azWrapMode)
Update ra and dec epoch for a source we are already tracking.
void setElOffset(double el, CORBA::ULong seq)
El astronomical offsets.
AzWrapMode
The azimuth drive can operate over more than a full circle, and the wrap logic dictates how the ambig...
void setEl(double el, CORBA::ULong seq)
Go to requested El.
void setAzOffset(double az, CORBA::ULong seq)
Az astronomical offsets.
void track(const char *source, const ::carma::antenna::common::DriveControl::RaDecTriplet &positionTriplet, carma::antenna::common::DriveControl::AzWrapMode azWrapMode, CORBA::Boolean overTheTop, CORBA::ULong seq)
Set RA/Dec with a source name for tracking.
void stop()
Stop the antenna.
void setEncoderCountsPerTurn(long az, long el)
Set Encoder counts per 1 revolution.
DriveControlImpl(std::string antenna, bool emulate)
Constructor.
Position
Enumerate valid fixed positions for Stow.
void trackSnow()
Track sun to melt snow on antenna.