private bool CheckParam(string[] valid_status)
        {
            int valid_status_code = 0;
            int pos;

            foreach (string s in valid_status)
            {
                pos = Array.IndexOf(StateMaps.RobotStatusMap, s);

                if (pos == -1)
                {
                    throw new System.ArgumentException(
                              String.Format("{0} is not an status in StatusMap", s),
                              "STATUS");
                }
                else
                {
                    valid_status_code |= 1 << pos;
                }
            }

            RobotParameters gp = group_ctrl.GroupParameters;

            if (gp.Status == valid_status_code)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Exemplo n.º 2
0
        private async static void Backtest(ISymbol symbol, IEnumerable <IBar> data)
        {
            var startTime = data.Min(iBar => iBar.Time);
            var endTime   = data.Max(iBar => iBar.Time);

            var robotParmeters = new RobotParameters
            {
                Account    = new BacktestAccount(1, 1, string.Empty, 500, "ConsoleTester"),
                Backtester = new OhlcBacktester {
                    Interval = TimeSpan.FromHours(1)
                },
                BacktestSettings = new BacktestSettings(startTime, endTime),
                Mode             = Mode.Backtest,
                Server           = new Server(),
                Symbols          = new List <ISymbol> {
                    symbol
                },
                SymbolsBacktestData = new List <ISymbolBacktestData> {
                    new SymbolBacktestData(symbol, data)
                },
                TimerContainer = new TimerContainer(),
            };

            robotParmeters.TradeEngine = new BacktestTradeEngine(robotParmeters.Server, robotParmeters.Account);

            robotParmeters.Account.AddTransaction(new Transaction(10000, startTime));

            robotParmeters.Backtester.OnBacktestStopEvent            += Backtester_OnBacktestStopEvent;
            robotParmeters.Backtester.OnBacktestProgressChangedEvent += Backtester_OnBacktestProgressChangedEvent;

            var robot = new SingleSymbolMaCrossOverBot();

            await robot.StartAsync(robotParmeters);
        }
Exemplo n.º 3
0
 public void motorState([FromBody] RobotParameters parameters)
 {
     if (parameters.MotorState.HasValue)
     {
         Console.WriteLine("Set Motors to " + (parameters.MotorState.Equals(true) ? "on" : "off"));
         this._rosService.SetMotorState(parameters.MotorState.Value);
     }
 }
Exemplo n.º 4
0
 public void setParams([FromBody] RobotParameters robotParameters)
 {
     if (robotParameters.Speed.HasValue || robotParameters.Zone.HasValue)
     {
         Console.WriteLine("Set Robot Parameters");
         this._rosService.SetParameters(robotParameters);
     }
 }
Exemplo n.º 5
0
 public void Awake()
 {
     hpDebuffLevel   = new ReactiveProperty <float>(1);
     robotParameters = GetComponent <RobotParameterHolder>().robotParameter;
     maxHp           = robotParameters.hp;
     hp               = new ReactiveProperty <float>(maxHp);
     deadSubject      = new Subject <Unit>();
     onDamagedSubject = new Subject <float>();
 }
Exemplo n.º 6
0
 public void SetParameters(RobotParameters robotParameters)
 {
     if (robotParameters.Zone.HasValue)
     {
         _serialPort.WriteLine($"{(int) RobotCommand.CommandType.SetZone},{robotParameters.Zone.Value}");
     }
     if (robotParameters.Speed.HasValue)
     {
         _serialPort.WriteLine($"{(int) RobotCommand.CommandType.SetSpeed},{robotParameters.Speed.Value}");
     }
     if (robotParameters.MotorState.HasValue)
     {
         _serialPort.WriteLine($"{(int) RobotCommand.CommandType.SetMotorState},{robotParameters.MotorState.Value}");
     }
 }
Exemplo n.º 7
0
        private void initializeControls()
        {
            // Load any saved settings
            RobotParameters.ReadParametersFromDisk(this);

            // Text
            _potisionTextView = (TextView)FindViewById(Resource.Id.PositionTextView);

            // Button Controls
            Button initializeButton = (Button)FindViewById(Resource.Id.InitializationButton);
            Button lightButton      = (Button)FindViewById(Resource.Id.LightButton);

            initializeButton.Click += InitializeButton_Click;
            lightButton.Click      += LightButton_Click;

            // Joystick
            JoystickView joystick = (JoystickView)FindViewById(Resource.Id.Joystick);

            joystick.PositionChanged += Joystick_PositionChanged;
            joystick.PositionStop    += Joystick_PositionStop;

            // Head and Arm buttons
            _headLeftButton      = (Button)FindViewById(Resource.Id.HeadLeftButton);
            _headRightButton     = (Button)FindViewById(Resource.Id.HeadRightButton);
            _shoulderOpenButton  = (Button)FindViewById(Resource.Id.ShoulderOpenButton);
            _shoulderCloseButton = (Button)FindViewById(Resource.Id.ShoulderCloseButton);
            _wristOpenButton     = (Button)FindViewById(Resource.Id.WristOpenButton);
            _wristCloseButton    = (Button)FindViewById(Resource.Id.WristCloseButton);
            _gripperOpenButton   = (Button)FindViewById(Resource.Id.GripperOpenButton);
            _gripperCloseButton  = (Button)FindViewById(Resource.Id.GripperCloseButton);

            _headLeftButton.Touch      += Button_Touch;
            _headRightButton.Touch     += Button_Touch;
            _shoulderOpenButton.Touch  += Button_Touch;
            _shoulderCloseButton.Touch += Button_Touch;
            _wristOpenButton.Touch     += Button_Touch;
            _wristCloseButton.Touch    += Button_Touch;
            _gripperOpenButton.Touch   += Button_Touch;
            _gripperCloseButton.Touch  += Button_Touch;

            _timer           = new Timer();
            _timer.Interval  = 1; // interval in milliseconds
            _timer.Enabled   = false;
            _timer.Elapsed  += TimerEvent;
            _timer.AutoReset = true;
        }
        /* Other Utils */
        #region Utils
        public int SysParamUpdate()
        {
            NexMotion_GroupAdapter groupAdapter    = group_ctrl.GroupAdapter;
            RobotParameters        groupParameters = group_ctrl.GroupParameters;

            groupAdapter.NMC_GroupGetState(ref groupParameters.State);
            groupAdapter.NMC_GroupGetStatus(ref groupParameters.Status);
            groupAdapter.NMC_GroupGetActualPosAcs(ref groupParameters.PosAcs);
            groupAdapter.NMC_GroupGetActualPosPcs(ref groupParameters.PosPcs);

            // WTF...
            groupParameters.ActAcs = groupParameters.PosAcs.pos;
            groupParameters.ActPcs = groupParameters.PosPcs.pos;

            /* TODO: IO Sync? */

            return(NexMotion_ErrCode.NMCERR_SUCCESS);
        }
Exemplo n.º 9
0
         private bool IsFileReady(RobotParameters parameters)
         {
                 try
                 {
 // code to try opening a file goes here
 // or code to see if files exist goes here
 
 // assuming file was opened with no errors and is ready for processing
 
                     return true;
                 }
                 catch (Exception e)
                 {
 
 // file is not ready for processing
 // and could not be opened
                     return false;
 
                 }
             }
Exemplo n.º 10
0
         public  void StartMonitoringForNewFiles(RobotParameters parameters)
         {
             try
             {
                 while (stopProcessing == false)
                 {
                     
                         stopProcessing = IsFileReady(parameters);
                     Thread.Sleep(5000);      // sleeps for 5 seconds 
 
                     if (stopProcessing == true)
                     {
                         break;      // get out of loop since file is ready
                     }
                 }
             }
             catch (Exception e)
             {
                 throw;
             }
         }
Exemplo n.º 11
0
 public void SetParameters(RobotParameters robotParameters)
 {
     throw new NotImplementedException();
 }
Exemplo n.º 12
0
 public void SetParameters(RobotParameters robotParameters)
 {
     Console.Write("-> Test - ", System.Reflection.MethodBase.GetCurrentMethod().Name + " ->");
     Console.WriteLine(robotParameters.ToString() + " <-");
 }