private void ORDER_moveIfChecked(e_rot rot) { if (GET_cbSendValuesToMotor(rot).IsChecked == true) { Ms[rot].ORDER_move(); } }
//private void UPDATE_motorsFromSliders() //{ // //foreach(e_rot //} private void UPDATE_motorFromSlider(e_rot rot) //nn { if (C_State.FURTHER(e_stateMotor.ready)) { Ms[rot].angleWanted.Dec = GET_slAngle(rot).Value; Ms[rot].speedWanted.Dec = GET_slSpeed(rot).Value; } }
public C_Packet(C_Motor _mot, byte _instructionByte, List <byte> _lsParameters = null) { byteId = _mot.id; rotMotor = _mot.rotMotor; returnStatusLevel = _mot.StatusReturnLevel; byteInstructionOrError = _instructionByte; Par = _lsParameters; }
private void UPDATE_slidersFromMotor(e_rot rot) //nn { if (C_State.FURTHER(e_stateMotor.ready)) { GET_slSpeed(rot).Value = Ms[rot].speedWanted.Dec; GET_slAngle(rot).Value = Ms[rot].angleWanted.Dec; //LOG_logger(string.Format("{0} = angle[{1}], speed[{2}]", rot, M(rot).angle.Dec, M(rot).speed.Dec)); } }
private void SET_motStringsFromRegister(C_Motor mot) { e_rot rot = mot.rotMotor; // show it as byte SET_motStrings(rot, string.Format("0x{0:X2}=\t{0}", //{0,4:###0}", mot.Reg.GET(address, regByteType).Val )); }
public float this[e_rot mot] { get { return(YawPitchRoll[(int)mot]); } set { YawPitchRoll[(int)mot] = value; } }
private void RAISE_PropertyChanged(e_rot rot) { switch (rot) { case (e_rot.yaw): onPropertyChanged(this, "yaw"); break; case (e_rot.pitch): onPropertyChanged(this, "pitch"); break; case (e_rot.roll): onPropertyChanged(this, "roll"); break; } }
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% #endregion properties //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% public C_MotorControl() : base() { lock_yaw = new object(); lock_pitch = new object(); lock_roll = new object(); M = new List <C_Motor>(); INIT_individualMotors(); actMrot = e_rot.yaw; }
public CheckBox GET_cbSendValuesToMotor(e_rot rot) { switch (rot) { case (e_rot.yaw): return(cbSendValuesToMotorYaw); case (e_rot.pitch): return(cbSendValuesToMotorPitch); case (e_rot.roll): return(cbSendValuesToMotorRoll); } return(null); }
public Slider GET_slAngle(e_rot rot) { switch (rot) { case (e_rot.yaw): return(slAngleYaw); case (e_rot.pitch): return(slAnglePitch); case (e_rot.roll): return(slAngleRoll); } return(null); }
public Slider GET_slSpeed(e_rot rot) { switch (rot) { case (e_rot.yaw): return(slSpeedYaw); case (e_rot.pitch): return(slSpeedPitch); case (e_rot.roll): return(slSpeedRoll); } return(null); }
private void slider_ValueChanged(object sender, RoutedPropertyChangedEventArgs <double> e) { if (C_State.FURTHER(e_stateMotor.ready)) { Slider sl = sender as Slider; if (sl != null) { sl.Value = Math.Round(e.NewValue, 2); e_rot rot = GET_rot(sl); UPDATE_motorFromSlider(rot); UPDATE_slidersFromMotor(rot); ORDER_moveIfChecked(rot); } REFRESH_motorData(); } }
public static bool GET_motorRotFromId(int id, out e_rot rot) { if (id == C_DynAdd.ID_BROADCAST) { rot = e_rot.yaw; return(false); } else { foreach (C_Motor mot in M) { if (mot.id == id) { rot = mot.rotMotor; return(true); } } rot = e_rot.yaw; return(false); } }
public C_Motor(e_rot _rot, byte _id, C_Value _angle, C_Value _speed) { id = _id; reg = new C_ByteRegister(); angleWanted = _angle; speedWanted = _speed; C_Value.angleFull.DecDefault = angleWanted.DecDefault; C_Value.angleFull.Dec = angleWanted.Dec; angleSeen = new C_Value(C_Value.angleFull); speedSeen = new C_Value(C_Value.speedFull); angleSent = new C_Value(C_Value.angleFull); speedSent = new C_Value(C_Value.speedFull); rotMotor = _rot; switch (rotMotor) { case (e_rot.yaw): motorLog = e_LogMsgSource.mot_yaw; break; case (e_rot.pitch): motorLog = e_LogMsgSource.mot_pitch; break; case (e_rot.roll): motorLog = e_LogMsgSource.mot_roll; break; } //angleHex = new byte[2] { 0, 0 }; if (cmdinEx_initialized == false) { INIT_cmdinEx(); } }
public static void ACTUALIZE_motorRegister(e_rot rot, e_regByteType type, List <byte> pars) { if (pars.Count > 0) { byte addressByte = pars[0]; byte[] parValues = pars.Skip(1).ToArray(); C_Packet.LOG_statusPacket(string.Format( "Status OK - actualizing mot[{0}] register type[{1}]: From address[{2}]=[{3}], these values[{4}]", rot, type, addressByte, MainWindow.Ms[rot].Reg.GET_name(addressByte), C_CONV.byteArray2strHex_space(parValues))); foreach (byte byteValue in parValues) { C_SPI.LOG_unimportant(string.Format( "going to acualize mot[{0}] register on address [{1}]", rot, addressByte )); MainWindow.Ms[rot].ACTUALIZE_register(addressByte, byteValue, type); addressByte++; } } }
public void GET_dataStringsForMotors(e_motorDataType _dataType) { //SystMessageBox.Show(str.ToString()); foreach (C_Motor mot in MainWindow.Ms) { e_rot rot = mot.rotMotor; switch (_dataType) { case (e_motorDataType.angleWanted): SET_motStrings(rot, string.Format(form_2dec + "°", mot.angleWanted.Dec)); break; case (e_motorDataType.angleSent): SET_motStrings(rot, string.Format(form_2dec + "°", mot.angleSent.Dec)); break; case (e_motorDataType.angleSeen): SET_motStrings(rot, string.Format(form_2dec + "°", mot.angleSeen.Dec)); break; case (e_motorDataType.speedWanted): SET_motStrings(rot, string.Format(form_2dec + "RPM", mot.speedWanted.Dec_inRPM)); break; case (e_motorDataType.speedSent): SET_motStrings(rot, string.Format(form_2dec + "RPM", mot.speedSent.Dec)); break; case (e_motorDataType.speedSeen): SET_motStrings(rot, string.Format(form_2dec + "RPM", mot.speedSeen.Dec_inRPM)); break; case (e_motorDataType.packetsDiedOfOldAge): SET_motStrings(rot, mot.packetsDiedOfOldAge.ToString()); break; case (e_motorDataType.packetsInLastSent): SET_motStrings(rot, mot.packetsDiedOfOldAge.ToString()); break; case (e_motorDataType.LED): SET_motStrings(rot, mot.LedValue.ToString()); break; case (e_motorDataType.LED_seen): SET_motStrings(rot, mot.LedValueSeen.ToString()); break; case (e_motorDataType.statusReturnLevel): SET_motStrings(rot, mot.StatusReturnLevel.ToString()); break; case (e_motorDataType.torqueEnable): SET_motStrings(rot, mot.torqueEnable.ToString()); break; case (e_motorDataType.isMoving): SET_motStrings(rot, mot.isMoving.ToString()); break; case (e_motorDataType.returnDelayTime): SET_motStrings(rot, string.Format(form_2dec + "us", mot.returnDelayTime * 2)); break; case (e_motorDataType.regByteValue): SET_motStringsFromRegister(mot); break; } } }
public C_Motor this[e_rot rot] { get { return(M[(int)rot]); } set { M[(int)rot] = value; } }
public string this[e_rot rot] { get { return(GET_motStrings(rot)); } set { SET_motStrings(rot, value); } }
private string GET_motStrings(e_rot rot) { return(motStrings[(int)rot]); }
public static C_Motor GET_M(e_rot rot) { return(M[(int)rot]); }
private void SET_motStrings(e_rot rot, string value) { RAISE_PropertyChanged(rot); motStrings[(int)rot] = value; }