Unverified Commit 97f713ab authored by Giuseppe Carboni's avatar Giuseppe Carboni Committed by GitHub
Browse files

Integration of new SRT LDO derotators into centos_7_compatibility branch (#925)

* Moved some method from GenericDerotator to SRTKBandDerotator

The methods were not generic, they were specific methods of the old SRTKBandDerotator decommissioned interface.
These methods are not even called by the DewarPositioner component, therefore it was safe to remove them from the GenericDerotator interface.

* Moved another unused method

* Updated GenericDerotator interface

* Fix #865, fix #869, updated SRTMinorServo component

The component now handles correctly a SETUP command.
The component is also capable of commanding the gregorian air blade with the 'setGregorianAirBladeStatus' command.
A few bugs were fixed here and there.
This branch MUST be tested with the real hardware before merging it onto the centos_7_compatibility branch.

* Fixed small bug

* Removed redundant script

* Uploading files in order to test a clean repository

* Updated PyDewarPositioner for Python 3

* First LDO Derotators working implementation

This commit also brings some clean up inside the SRT test CDB.
All the stuff that is not used in the production environment has been moved out of the production and test environment and into the Outdated CDB.

* KBand derotator updates

* Moved SRTDerotators out of SRTMinorServoBossCore

Each derotator now has its thread for updating its status
parent e311ab51
Loading
Loading
Loading
Loading
+13 −38
Original line number Diff line number Diff line
@@ -43,10 +43,7 @@ module Receivers {
     * <h3>Methods</h3>:
     * <ul>
     *     <li>setup(): allow the derotator to be ready to move</li>
     *     <li>powerOff(): switch the power amplifier off </li>
     *     <li>setPosition(): set the derotator position</li>
     *     <li>setSpeed(): set the derotator speed, in rpm</li>
     *     <li>getSpeed(): get the derotator speed, in rpm</li>
     *     <li>getActPosition(): return the actPosition value</li>
     *     <li>getCmdPosition(): return the cmdPosition value</li>
     *     <li>getPositionFromHistory(t): return the the derotator position at
@@ -61,7 +58,8 @@ module Receivers {
     *     <li>isSlewing(): return true when the derotator is moving</li>
     * </ul> 
     */
    interface GenericDerotator : ACS::CharacteristicComponent {
    interface GenericDerotator
    {
       
        /** 
         * This property returns the sensor encoder position in the user
@@ -125,14 +123,6 @@ module Receivers {
        );


        /** Switch the power amplifier off
         *
         * @throw CORBA::SystemException
         * @throw ComponentErrors::ComponentErrorsEx
         */
        void powerOff() raises (ComponentErrors::ComponentErrorsEx);


        /** 
         * @return the actPosition property value
         *
@@ -147,6 +137,17 @@ module Receivers {
        );


        /**
         * This method loads a position that has to be tracked by the derotator
         * @param point_time an ACS::Time object indicating the time associated with the coordinates to be tracked.
         *        Only the start time is sent to the derotator and the points after are always spaced by the same amount of time from one another.
         *        It is still necessary to fill this field in order to associate a time to the coordinates inside the component.
         * @param position the position to track at the given time
         * @param restart flag that says the given point is the first of a new trajectory
         */
        void loadTrackingPoint(in ACS::Time point_time, in double position, in boolean restart) raises (DerotatorErrors::DerotatorErrorsEx);


        /**
         * @return the cmdPosition property value
         *
@@ -178,32 +179,6 @@ module Receivers {
         double getPositionFromHistory(in ACS::Time t) raises (ComponentErrors::ComponentErrorsEx);


        /** 
         * Set the derotator speed
         *
         * @arg speed speed in rpm
         * @throw ComponentErrors::ComponentErrorsEx,
         * @throw DerotatorErrors::DerotatorErrorsEx
         */
        void setSpeed(in unsigned long speed) raises (
            ComponentErrors::ComponentErrorsEx,
            DerotatorErrors::DerotatorErrorsEx
        );


        /** 
         * Get the derotator speed
         *
         * @return the derotator speed in rpm
         * @throw ComponentErrors::ComponentErrorsEx,
         * @throw DerotatorErrors::DerotatorErrorsEx
         */
        unsigned long getSpeed() raises (
            ComponentErrors::ComponentErrorsEx,
            DerotatorErrors::DerotatorErrorsEx
        );


        /**
         * Return the maximum position value allowed.
         * @throw CORBA::SystemException
+1 −0
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@
        <!--xs:attribute name="actionThreadStackSize" type="xs:unsignedLong" use="optional" default="1024" />
        <xs:attribute name="monitoringThreadStackSize" type="xs:unsignedLong" use="optional" default="2048" /-->
        <xs:attribute name="UpdatingTime" type="xs:double" use="required" />
        <xs:attribute name="TrackingLeadTime" type="xs:double" use="required" />
        <xs:attribute name="RewindingSleepTime" type="xs:double" use="required" />
        <xs:attribute name="RewindingTimeout" type="xs:double" use="required" />
        <xs:attribute name="DefaultConfiguration" type="xs:string" use="required" />
+88 −88

File changed.

Preview size limit exceeded, changes collapsed.

+1 −0
Original line number Diff line number Diff line
@@ -11,6 +11,7 @@ class CDBConf(object):

    componentAttributes = (
            'UpdatingTime', 
            'TrackingLeadTime',
            'RewindingSleepTime', 
            'RewindingTimeout',
            'DefaultConfiguration',
+54 −81

File changed.

Preview size limit exceeded, changes collapsed.

Loading