Exemplo n.º 1
0
        /// <summary>
        /// Creates the plan connecting coordinates constant speed without acceleration.
        /// </summary>
        /// <param name="trajectory">Trajectory which plan will be created.</param>
        /// <returns>The created plan.</returns>
        public PlanBuilder CreateConstantPlan(Trajectory4D trajectory)
        {
            var planBuilder = new PlanBuilder();

            iterateDistances(trajectory, (p, x, y) => planBuilder.AddConstantSpeedTransitionXY(x, y, _transitionSpeed));
            return(planBuilder);
        }
Exemplo n.º 2
0
        public void SetPosition(int newPosition)
        {
            var steps = newPosition - _currentPosition;

            var builder = new Planning.PlanBuilder();

            //builder.AddRampedSteps(steps, Constants.FastestDeltaT);
            builder.AddConstantSpeedTransitionXY(steps, steps, Configuration.ReverseSafeSpeed);
            builder.DuplicateXYtoUV();
            _cnc.SEND(builder.Build());

            //position setting is blocking for now
            while (_cnc.IncompleteInstructionCount > 0)
            {
                System.Threading.Thread.Sleep(1);
            }

            _currentPosition = newPosition;
        }