PmxCSharpLib 1.0.0.0
読み取り中…
検索中…
一致する文字列を見つけられません
PMX.PmxBase クラス

PMXで使用する関数や定義をひとまとまりにしたものです [詳解]

PMX.PmxBase の継承関係図
PMX.PmxSerialClass

公開メンバ関数

virtual bool synchronize (List< byte > txBuf, out List< byte > rxBuf, int rxLen)
 ICS送信の送受信
 
virtual bool synchronizeVariableRead (List< byte > txBuf, out List< byte > rxBuf)
 synchronizeVariableRead関数は、サブクラスでオーバーライドする必要があるプレースホルダーです。 受信データ数がわからない場合でも送受信したい場合に使用します。
 
ushort checkRecv (List< byte > rxBuff, byte cmd, byte header=0xFE)
 checkRecv関数は、受信パケットのヘッダー、パケット長、およびコマンドをチェックします。
 
ushort MemREAD (byte id, ushort addr, int readDataSize, out List< byte > rxData)
 MemREADコマンドでPMXサーボモータからデータを取得します。
 
ushort MemREADToByte (byte id, ushort addr, out byte byteData)
 MemREADで取得したデータをbyte(符号なし1byte)に変換して取得します。
 
ushort MemREADToInt16 (byte id, ushort addr, out short int16Data)
 MemREADで取得したデータをint16(符号あり2byte)に変換して取得します。
 
ushort MemREADToUint16 (byte id, ushort addr, out ushort uint16Data)
 MemREADで取得したデータをUint16(符号なし2byte)に変換して取得します。
 
ushort MemREADToInt32 (byte id, ushort addr, out int int32Data)
 MemREADで取得したデータをint32(符号あり4byte)に変換して取得します。
 
ushort MemREADToUint32 (byte id, ushort addr, out uint uint32Data)
 MemREADで取得したデータをUint32(符号なし4byte)に変換して取得します。
 
ushort MemWRITE (byte id, ushort addr, byte[] txDataArray, byte writeOpt=0)
 PMXサーボモータにMemWRITEコマンドを発行し、結果を取得します。
 
ushort MemWRITEToByte (byte id, ushort addr, byte byteData, byte writeOpt=0)
 MemWRITEでbyte(符号なし1byte)のデータを書き込みます。その結果のステータス情報を返信します。
 
ushort MemWRITEToInt16 (byte id, ushort addr, short int16Data, byte writeOpt=0)
 MemWRITEでint16(符号あり2byte)のデータを書き込みます。その結果のステータス情報を返信します。
 
ushort MemWRITEToUint16 (byte id, ushort addr, ushort uint16Data, byte writeOpt=0)
 MemWRITEでUint16(符号なし2byte)のデータを書き込みます。その結果のステータス情報を返信します。
 
ushort MemWRITEToInt32 (byte id, ushort addr, int int32Data, byte writeOpt=0)
 MemWRITEでint32(符号あり4byte)のデータを書き込みます。その結果のステータス情報を返信します。
 
ushort MemWRITEToUint32 (byte id, ushort addr, uint uint32Data, byte writeOpt=0)
 MemWRITEでUint32(符号なし4byte)のデータを書き込みます。その結果のステータス情報を返信します。
 
ushort LOAD (byte id)
 PMXサーボモータのLOADコマンドを発行し、ステータス結果を取得します。
 
ushort SAVE (byte id)
 PMXサーボモータのSAVEコマンドを発行し、ステータス結果を取得します。
 
ushort MotorREAD (byte id, byte receiveMode, out int[] receiveData, byte controlMode=0x01)
 MotorREAD関数を発行し、応答モードに応じてデータを取得します。
 
ushort MotorREAD (byte id, byte receiveMode, out byte torqueSw, out int[] receiveData, byte controlMode=0x01)
 MotorREAD関数を発行し、応答モードに応じてデータとトルクスイッチの状態を取得します。
 
ushort MotorWRITE (byte id, byte torqueOnSw)
 MotorWRITE 機能は、モータの制御やトルクのオン/オフを切り替えるコマンドを送信し、モーターからステータスとデータを受信します。
 
ushort MotorWRITE (byte id, byte torqueSw, byte receiveMode, out int[] receiveData, byte controlMode=0x01)
 MotorWRITE 機能は、モータの制御やトルクのオン/オフを切り替えるコマンドを送信し、モーターからステータスとデータを受信します。
 
ushort MotorWRITE (byte id, int[] writeDatas)
 MotorWRITE 機能は、モータの制御やトルクのオン/オフを切り替えるコマンドを送信し、モーターからステータスとデータを受信します。
 
ushort MotorWRITE (byte id, int[] writeDatas, byte receiveMode, out int[] receiveData, byte controlMode=0x01)
 MotorWRITE 機能は、モータの制御やトルクのオン/オフを切り替えるコマンドを送信し、モーターからステータスとデータを受信します。
 
ushort MotorWRITESingle (byte id, int targetVal)
 MotorWRITEでデータ指示一つの場合に使用します
 
ushort MotorWRITESingle (byte id, int targetVal, byte receiveMode, out int[] receiveData, byte controlMode=0x01)
 MotorWRITEでデータ指示一つの場合に使用します
 
ushort MotorWRITEDouble (byte id, int targetVal1, int targetVal2)
 MotorWRITEを使用して2変数を指示するときに使用します。
 
ushort MotorWRITEDouble (byte id, int targetVal1, int targetVal2, byte receiveMode, out int[] receiveData, byte controlMode=0x01)
 MotorWRITEを使用して2変数を指示するときに使用します。
 
ushort MotorWRITETriple (byte id, int targetVal1, int targetVal2, int targetVal3)
 MotorWRITEを使用して3変数を指示するときに使用します。
 
ushort MotorWRITETriple (byte id, int targetVal1, int targetVal2, int targetVal3, byte receiveMode, out int[] receiveData, byte controlMode=0x01)
 MotorWRITEを使用して3変数を指示するときに使用します。
 
ushort SystemREAD (byte id, out byte[] rxData)
 SystemREAD 関数は、サーボからシステム情報を読み取ります。
 
ushort getSerialNumber (byte id, out uint serialintNum)
 指定したIDのサーボからシリアル番号を取得します。
 
ushort getSerialNumber (byte id, out byte[] serialByteNum)
 指定したIDのサーボからシリアル番号を取得します。
 
ushort getModelNum (byte id, out uint modelFullNum)
 指定したIDのサーボからモデル番号を取得します。
 
ushort getModelNum (byte id, out ushort modelNum, out ushort seriesNum)
 指定したIDのサーボからモデル番号、シリーズ番号を取得します。
 
ushort getVersion (byte id, out byte[] verData)
 指定したIDからファームウェアのバージョン番号を取得します。
 
ushort getResponseTime (byte id, out byte respTime)
 システム読み取り操作のステータスと応答時間を取得します。
 
ushort SystemWRITE (byte id, byte[] serialNum, byte option, byte newId, byte newBaudrateVal, byte newParityVal, byte newResponseTime)
 SystemWRITEコマンドを使用してID、ボーレート、パリティ、および応答時間を設定します。
 
ushort SystemWRITE (byte id, uint serialNum, byte option, byte newId, byte newBaudrateVal, byte newParityVal, byte newResponseTime)
 SystemWRITEコマンドを使用してID、ボーレート、パリティ、および応答時間を設定します。
 
ushort SystemWRITE (byte id, byte option, byte newId, byte newBaudrateVal, byte newParityVal, byte newResponseTime)
 SystemWRITEコマンドを使用してID、ボーレート、パリティ、および応答時間を設定します。
 
ushort setId (byte id, byte newId)
 指定したIDを新しい ID に設定します。
 
ushort setBaudrate (byte id, int newBaudrate)
 指定したIDの通信速度を設定します
 
ushort setParity (byte id, byte newParityNum)
 指定したIDのパリティを設定します
 
ushort setResponseTime (byte id, byte respTime)
 指定したIDの応答時間を設定します
 
ushort ReBoot (byte id, int resetTime)
 サーボモータを再起動させます。
 
ushort FactoryReset (byte id, byte[] serialNum)
 サーボを工場出荷時の設定にリセットします
 
ushort getCenterOffset (byte id, out short offsetData)
 指定した ID の中央値オフセット値を取得します。
 
ushort getCloneReverse (byte id, out byte data)
 指定した ID のクローン/リバース値を取得します。
 
ushort getMinVoltageLimit (byte id, out ushort data)
 指定したIDの下限電圧リミット値を取得します。
 
ushort getMinVoltageLimitPower (byte id, out ushort data)
 指定したIDの下限リミット電圧を下回った場合の出力割合を取得します。
 
ushort getMaxVoltageLimit (byte id, out ushort data)
 指定したIDの上限リミット電圧を取得します。
 
ushort getMaxVoltageLimitPower (byte id, out ushort data)
 指定したIDの上限リミット電圧を超えた場合の出力割合を取得します。
 
ushort getCurrentLimit (byte id, out ushort data)
 指定したIDの電流リミット値を取得します。
 
ushort getCurrentLimitPower (byte id, out ushort data)
 指定したIDの電流リミットを超えた時の出力割合を取得します。
 
ushort getMotorTempLimit (byte id, out short data)
 指定したIDのモータ温度リミット値を取得します。
 
ushort getMotorTempLimitPower (byte id, out ushort data)
 指定したIDのモータ温度リミットを超えた時の出力割合を取得します。
 
ushort getCpuTempLimit (byte id, out short data)
 指定したIDのCPU温度リミット値を取得します。
 
ushort getCpuTempLimitPower (byte id, out ushort data)
 指定したIDのCPU温度リミットを超えた時の出力割合を取得します。
 
ushort getCwPositionLimit (byte id, out short data)
 指定したIDのCW方向の動作角度リミット値を取得します。
 
ushort getCwPositionLimitPower (byte id, out ushort data)
 指定したIDのCW側の角度を超えた時の出力の割合を取得します。
 
ushort getCcwPositionLimit (byte id, out short data)
 指定したIDのCCW方向の動作角度リミット値を取得します。
 
ushort getCcwPositionLimitPower (byte id, out ushort data)
 指定したIDのCCW側の角度を超えた時の出力の割合を取得します。
 
ushort getMaxGoalSpeed (byte id, out short data)
 指定したIDの指令可能な最大速度値を取得します。
 
ushort getMaxGoalCurrent (byte id, out short data)
 指定したIDの指令可能な最大電流値を取得します。
 
ushort getMaxGoalTorque (byte id, out short data)
 指定したIDの指令可能な最大推定トルク値を取得します。
 
ushort getTotalPowerRate (byte id, out ushort data)
 指定したIDのモータに出力する割合を取得します。
 
ushort getLockDetectTime (byte id, out ushort data)
 指定したIDのロック検知を認識するまでの時間を取得します。
 
ushort getLockThresholdPower (byte id, out ushort data)
 指定したIDのロック検知を開始する出力指示の閾値を取得します。
 
ushort getLockDetectOutputPower (byte id, out ushort data)
 指定したIDがロック検知が起きた時の出力の割合を取得します。
 
ushort getPosition (byte id, out short posData)
 指定したIDの現在指示位置を取得します。
 
ushort getPosition (byte id, out ushort posData)
 指定したIDの現在指示位置を取得します。
 
ushort getPosition (byte id, out int posData, byte controlMode=0x01)
 指定したIDの現在の位置を取得します。
 
ushort getSpeed (byte id, out short spdData)
 指定した ID の現在の速度を取得します。
 
ushort getCurrent (byte id, out short curData)
 指定した ID の現在の電流を取得します。
 
ushort getTorque (byte id, out short trqData)
 指定した ID の現在のトルクを取得します。
 
ushort getPwm (byte id, out short pwmData)
 指定したIDの現在のPWMを取得します。
 
ushort getMotorTemp (byte id, out short motTempData)
 指定したIDの現在のモータ温度を取得します。
 
ushort getCPUTemp (byte id, out short cpuTempData)
 指定された ID の現在のCPU温度を取得します。
 
ushort getInputVoltage (byte id, out ushort volData)
 指定された ID の現在の電圧を取得します。
 
ushort getTrajectoryTime (byte id, out ushort traTimeData)
 指定された ID の現在の補間時間を取得します。
 
ushort getEncoder (byte id, out ushort encData)
 指定された ID のエンコーダを取得します。
 
ushort getStatus (byte id, out byte stData)
 指定したIDのステータスを取得します。
 
ushort getSystemStatus (byte id, out byte sysStaData)
 指定された ID のシステムステータスを取得します。
 
ushort getMotorStatus (byte id, out byte motStaData)
 指定したIDのモータステータスを取得します。
 
ushort getRamAccessStatus (byte id, out ushort ramStaData)
 指定された ID のRAMアクセスステータスを取得します。
 
ushort getFullStatus (byte id, out byte sysSt, out byte motorSt, out ushort ramSt)
 指定した ID の全てのステータス情報を取得します。
 
ushort resetFullStatus (byte id)
 指定された ID の全てのステータス情報をリセットします。
 
ushort getTorqueSwitch (byte id, out byte trqSwitchData)
 指定した ID のトルク ON 値を取得します。
 
ushort getControlMode (byte id, out byte controlMode)
 指定した ID の制御モードを取得します。
 
ushort getMotorReceive (byte id, out byte receiveMode)
 指定した ID の応答データ指定値を取得します。
 
ushort getTrajectory (byte id, out byte traData)
 指定した ID の補間制御軌道生成タイプ指定を取得します
 
ushort getCenterOffsetRange (byte id, out short minData, out short maxData)
 指定したIDの中央値オフセット(CenterOffset)の設定可能な最小/最大の範囲を取得します
 
ushort getMinVoltageLimitRange (byte id, out ushort minData, out ushort maxData)
 指定したIDの入力最小電圧リミット値(MinVoltageLimit)の設定可能な最小/最大の範囲を取得します
 
ushort getMaxVoltageLimitRange (byte id, out ushort minData, out ushort maxData)
 指定した ID の最大電圧(MaxVoltage)の設定可能な範囲を取得します
 
ushort getCurrentLimitRange (byte id, out ushort minData, out ushort maxData)
 指定した ID の電流(Current)の設定可能な範囲を取得します
 
ushort getMotorTempLimitRange (byte id, out short minData, out short maxData)
 指定した ID のモータ温度(MotorTemp)の範囲を取得します
 
ushort getCpuTempLimitRange (byte id, out short minData, out short maxData)
 指定した ID のCPU温度の範囲(CpuTemp)を取得します
 
ushort getCwPositionLimitRange (byte id, out short minData, out short maxData)
 指定したIDの指定したCW方向の動作角度リミット値(CwPosition)の設定可能な範囲を取得します
 
ushort getCcwPositionLimitRange (byte id, out short minData, out short maxData)
 指定したIDの指定したCCW方向の動作角度リミット値(CcwPosition)の設定可能な範囲を取得します
 
ushort getMaxGoalSpeedRange (byte id, out short minData, out short maxData)
 指定した ID の最大速度指令値(MaxGoalSpeed)の設定可能な範囲を取得します。
 
ushort getMaxGoalCurrentRange (byte id, out short minData, out short maxData)
 指定した ID の最大電流指令値(MaxGoalCurrent)の設定可能な範囲を取得します
 
ushort getMaxGoalTorqueRange (byte id, out short minData, out short maxData)
 指定した ID の最大トルク指令値(MaxGoalTorque)の設定可能な範囲を取得します
 
ushort getDafaultPidGain (byte id, ushort pAddr, out uint kpdata, out uint kidata, out uint kddata, out uint stdata)
 指定した ID の PID ゲインを取得します。
 
ushort getPresetAllPidGains (byte id, byte presetNum, out List< uint > gainList)
 指定した ID 、プリセット番号の PID ゲインを位置からトルクまで全て取得します。
 
ushort getPresetPidGains (byte id, byte presetNum, byte gainType, out uint kpdata, out uint kidata, out uint kddata, out uint stdata)
 指定した ID 、プリセット番号、ゲインタイプのPID ゲインを取得します。
 
ushort getAllPresetNum (byte id, out byte pPos, out byte pSpd, out byte pCur, out byte pTrq)
 指定した ID のすべてのプリセット番号を取得します。
 
ushort getLedMode (byte id, out byte ledData)
 指定したID のLED点灯モードを取得します。
 
ushort setDafaultPidGain (byte id, ushort pidAddr, uint kp, uint ki, uint kd, uint? st=null, byte writeOpt=0)
 指定した ID のPIDゲインを変更します。
 
ushort setPositionKpGain (byte id, uint data, byte writeOpt=0)
 指定した ID のプリセット1の位置制御のPゲインを変更します。
 
ushort setPositionKiGain (byte id, uint data, byte writeOpt=0)
 指定した ID のプリセット1の位置制御のIゲインを変更します。
 
ushort setPositionKdGain (byte id, uint data, byte writeOpt=0)
 指定した ID のプリセット1の位置制御のDゲインを変更します。
 
ushort setPositionGain (byte id, uint kpdata, uint kidata, uint kddata, byte writeOpt=0)
 指定した ID のプリセット1の位置制御のPIDゲインを変更します。
 
ushort setPositionStretchGain (byte id, uint data, byte writeOpt=0)
 指定した ID のプリセット1の位置制御のストレッチゲインを変更します。
 
ushort setSpeedKpGain (byte id, uint data, byte writeOpt=0)
 指定した ID のプリセット1の速度制御のPゲインを変更します。
 
ushort setSpeedKiGain (byte id, uint data, byte writeOpt=0)
 指定した ID のプリセット1の速度制御のIゲインを変更します。
 
ushort setSpeedKdGain (byte id, uint data, byte writeOpt=0)
 指定した ID のプリセット1の速度制御のDゲインを変更します。
 
ushort setSpeedGain (byte id, uint kpdata, uint kidata, uint kddata, byte writeOpt=0)
 指定した ID のプリセット1の速度制御のPIDゲインを変更します。
 
ushort setCurrentKpGain (byte id, uint data, byte writeOpt=0)
 指定した ID のプリセット1の電流制御のPゲインを変更します。
 
ushort setCurrentKiGain (byte id, uint data, byte writeOpt=0)
 指定した ID のプリセット1の電流制御のIゲインを変更します。
 
ushort setCurrentKdGain (byte id, uint data, byte writeOpt=0)
 指定した ID のプリセット1の電流制御のDゲインを変更します。
 
ushort setCurrentGain (byte id, uint kpdata, uint kidata, uint kddata, byte writeOpt=0)
 指定した ID のプリセット1の電流制御のPIDゲインを変更します。
 
ushort setTorqueKpGain (byte id, uint data, byte writeOpt=0)
 指定した ID のプリセット1のトルク制御のPゲインを変更します。
 
ushort setTorqueKiGain (byte id, uint data, byte writeOpt=0)
 指定した ID のプリセット1のトルク制御のIゲインを変更します。
 
ushort setTorqueKdGain (byte id, uint data, byte writeOpt=0)
 指定した ID のプリセット1のトルク制御のDゲインを変更します。
 
ushort setTorqueGain (byte id, uint kpdata, uint kidata, uint kddata, byte writeOpt=0)
 指定した ID のプリセット1のトルク制御のPIDゲインを変更します。
 
ushort setCenterOffset (byte id, short offsetData)
 指定した ID の中央値オフセット値を設定します。
 
ushort setCloneReverse (byte id, byte data)
 指定した ID のクローン/リバースを設定します。
 
ushort setMinVoltageLimit (byte id, ushort minVol, ushort limPower, byte writeOpt=0)
 指定した ID の下限電圧を下回った時の挙動を設定します。
 
ushort setMaxVoltageLimit (byte id, ushort maxVol, ushort limPower, byte writeOpt=0)
 指定した ID の上限電圧を上回った時の挙動を設定します。
 
ushort setCurrentLimit (byte id, ushort maxCur, ushort limPower, byte writeOpt=0)
 指定した ID のモータ消費電流最大値を上回った時の挙動を設定します。
 
ushort setMotorTempLimit (byte id, short motorTemp, ushort limPower, byte writeOpt=0)
 指定した ID のモータ温度最大値を上回った時の挙動を設定します。
 
ushort setCpuTempLimit (byte id, short cpuTemp, ushort limPower, byte writeOpt=0)
 指定した ID のCPU温度最大値を上回った時の挙動を設定します。
 
ushort setPositionLimit (byte id, short cwPos, short ccwPos, ushort limPower, byte writeOpt=0)
 指定した ID の最大角を上回った時の挙動を設定します。
 
ushort setMaxGoalSpeed (byte id, short maxGoalSpd, byte writeOpt=0)
 指定した ID の最大速度指令値を設定します。
 
ushort setMaxGoalCurrent (byte id, short maxGoalCur, byte writeOpt=0)
 指定した ID の最大電流指令値を設定します。
 
ushort setMaxGoalTorque (byte id, short maxGoalTrq, byte writeOpt=0)
 指定した ID の最大動推定トルク指令値を設定します。
 
ushort setTotalPowerRate (byte id, ushort rate, byte writeOpt=0)
 指定した ID のモータ出力制限%値を設定します。
 
ushort setLockDetect (byte id, ushort time, ushort power, ushort outputPower, byte writeOpt=0)
 指定した ID のロック時間、ロックと認識される出力割合、およびロック時間の出力%値を設定します。
 
ushort setTorqueSwitch (byte id, byte data, byte writeOpt=1)
 指定された ID のトルクスイッチを設定します。(TorqueON / Free / Brake / Hold)
 
ushort setControlMode (byte id, byte controlMode, byte writeOpt=0)
 指定された ID の位置制御などの制御モードを設定します。
 
ushort setMotorReceive (byte id, byte receiveMode, byte writeOpt=0)
 指定したIDのmotorREADやmotorWRITEから返信される応答モードを設定します。
 
ushort setTrajectory (byte id, byte trajecrotyData, byte writeOpt=0)
 指定した ID の補間制御軌道生成タイプ指定を設定します。
 
ushort setAllPresetNum (byte id, byte presetNum, byte writeOpt=0)
 指定した ID の全てのプリセット番号を設定します。
 
ushort setPidGains (byte id, byte presetNum, byte gainType, uint kp, uint ki, uint kd, uint? st=null, byte writeOpt=0)
 ID、プリセット番号、ゲインタイプを指定し、PIDゲインを変更します。
 
ushort setLedMode (byte id, byte ledVal)
 指定した ID のLEDモードを設定します。
 
ushort setMotorTorqueOn (byte id)
 指定した ID のモータをトルクオンにし、ステータス、モータのON/OFF、受信データを取得します。
 
ushort setMotorTorqueOn (byte id, byte receiveMode, out int[] receiveData, byte controlMode=0x01)
 指定した ID のモータをトルクオンにし、ステータス、モータのON/OFF、受信データを取得します。
 
ushort setMotorFree (byte id)
 指定した ID のモータをフリーにし、ステータス、モータのON/OFF、受信データを取得します。
 
ushort setMotorFree (byte id, byte receiveMode, out int[] receiveData, byte controlMode=0x01)
 指定した ID のモータをフリーにし、ステータス、モータのON/OFF、受信データを取得します。
 
ushort setMotorBrake (byte id)
 指定した ID のモータをブレーキにし、ステータス、モータのON/OFF、受信データを取得します。
 
ushort setMotorBrake (byte id, byte receiveMode, out int[] receiveData, byte controlMode=0x01)
 指定した ID のモータをブレーキにし、ステータス、モータのON/OFF、受信データを取得します。
 
ushort setMotorHold (byte id)
 指定した ID のモータをホールドにし、ステータス、モータのON/OFF、受信データを取得します。
 
ushort setMotorHold (byte id, byte receiveMode, out int[] receiveData, byte controlMode=0x01)
 指定した ID のモータをホールドにし、ステータス、モータのON/OFF、受信データを取得します。
 
ushort setPosition (byte id, short pos)
 指定した ID のモータの位置パラメーターを設定し、データをモーター コントローラーに送信します。
 
ushort setPosition (byte id, short pos, byte receiveMode, int[] receiveData)
 指定した ID のモータの位置パラメーターを設定し、データをモーター コントローラーに送信します。
 

静的公開変数類

static readonly byte ErrorByteData = 0xFF
 
static readonly ushort ErrorUint16Data = 0x7FFF
 
static readonly uint ErrorUint32Data = 0x7FFFFFFF
 

詳解

PMXで使用する関数や定義をひとまとまりにしたものです

  • PMXの固有値の定義
  • PMXのコマンドの生成、チェックおよび送受信(送信部分は外部依存)
  • PMXで必要だと思われる機能の関数化

をしています

警告
通信部分は外部に定義しますのでこのclassを派生して送信に必要な関数を追加してください。

関数詳解

◆ checkRecv()

ushort PMX.PmxBase.checkRecv ( List< byte > rxBuff,
byte cmd,
byte header = 0xFE )
inline

checkRecv関数は、受信パケットのヘッダー、パケット長、およびコマンドをチェックします。

受信データを解析し、下記エラーかどうかチェックを行います

  • ヘッダのチェック
  • timeout(コマンドを何か受信したか)
  • 受信データの長さ
  • 受信したコマンドが一致するかどうか
  • CRC
引数
rxBuff受信したCRCを含む全てのデータ(バイト配列)
cmd受信時にチェックするコマンド
headerヘッダーがデフォルトと違う場合に指定する
戻り値
unsigned short 通信の状態(PMX.ComError参照)

◆ FactoryReset()

ushort PMX.PmxBase.FactoryReset ( byte id,
byte[] serialNum )
inline

サーボを工場出荷時の設定にリセットします

引数
idPMXサーボモータのID番号
serialNumシリアル番号
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
覚え書き
serialNumがNone場合はこの関数内で取得するので省略可能

◆ getAllPresetNum()

ushort PMX.PmxBase.getAllPresetNum ( byte id,
out byte pPos,
out byte pSpd,
out byte pCur,
out byte pTrq )
inline

指定した ID のすべてのプリセット番号を取得します。

引数
idPMXサーボモータのID番号
pPos読み取った位置ゲインプリセット
pSpd読み取った速度ゲインプリセット
pCur読み取った電流ゲインプリセット
pTrq読み取ったトルクゲインプリセット
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCcwPositionLimit()

ushort PMX.PmxBase.getCcwPositionLimit ( byte id,
out short data )
inline

指定したIDのCCW方向の動作角度リミット値を取得します。

MemREADを使用して指定したIDからCCW方向の動作角度リミット値を取得します。

引数
idPMXサーボモータのID番号
dataCCW方向の動作角度リミット値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCcwPositionLimitPower()

ushort PMX.PmxBase.getCcwPositionLimitPower ( byte id,
out ushort data )
inline

指定したIDのCCW側の角度を超えた時の出力の割合を取得します。

MemREADを使用して指定したIDからCCW側の角度を超えた時の出力の割合を取得します。

引数
idPMXサーボモータのID番号
dataCCW方向の閾値外時の出力割合(%)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCcwPositionLimitRange()

ushort PMX.PmxBase.getCcwPositionLimitRange ( byte id,
out short minData,
out short maxData )
inline

指定したIDの指定したCCW方向の動作角度リミット値(CcwPosition)の設定可能な範囲を取得します

MemREADを使用して指定したIDから指定したCCW方向の動作角度リミット値(CcwPosition)の範囲を取得します。

引数
idPMXサーボモータのID番号
minDataCcwPositionの最小値
maxDataCcwPositionの最大値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCenterOffset()

ushort PMX.PmxBase.getCenterOffset ( byte id,
out short offsetData )
inline

指定した ID の中央値オフセット値を取得します。

MemREADを使用して指定したIDから中央値オフセット値を取得します。

引数
idPMXサーボモータのID番号
offsetData中央値オフセット値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCenterOffsetRange()

ushort PMX.PmxBase.getCenterOffsetRange ( byte id,
out short minData,
out short maxData )
inline

指定したIDの中央値オフセット(CenterOffset)の設定可能な最小/最大の範囲を取得します

MemREADを使用して指定したIDから中央値オフセット(CenterOffset)の設定可能な最小/最大の範囲を取得します。

引数
idPMXサーボモータのID番号
minDataCenterOffsetの最小値
maxDataCenterOffsetの最大値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCloneReverse()

ushort PMX.PmxBase.getCloneReverse ( byte id,
out byte data )
inline

指定した ID のクローン/リバース値を取得します。

MemREADを使用して指定したIDからクローン/リバースを取得します。

引数
idPMXサーボモータのID番号
dataクローン/リバース値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getControlMode()

ushort PMX.PmxBase.getControlMode ( byte id,
out byte controlMode )
inline

指定した ID の制御モードを取得します。

MemREADを使用して指定したIDから制御モードを取得します。

引数
idPMXサーボモータのID番号
controlMode制御モード値(PMX.ControlModeを参照)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCPUTemp()

ushort PMX.PmxBase.getCPUTemp ( byte id,
out short cpuTempData )
inline

指定された ID の現在のCPU温度を取得します。

MemREADを使用して指定したIDから現在CPU温度を取得します。

引数
idPMXサーボモータのID番号
cpuTempData現在のCPU温度データ
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCpuTempLimit()

ushort PMX.PmxBase.getCpuTempLimit ( byte id,
out short data )
inline

指定したIDのCPU温度リミット値を取得します。

MemREADを使用して指定したIDからCPU温度リミット値を取得します。

引数
idPMXサーボモータのID番号
dataCPU温度リミット値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCpuTempLimitPower()

ushort PMX.PmxBase.getCpuTempLimitPower ( byte id,
out ushort data )
inline

指定したIDのCPU温度リミットを超えた時の出力割合を取得します。

MemREADを使用して指定したIDからCPU温度リミットを超えた時の出力割合を取得します。

引数
idPMXサーボモータのID番号
dataCPU温度リミット時の出力割合(%)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCpuTempLimitRange()

ushort PMX.PmxBase.getCpuTempLimitRange ( byte id,
out short minData,
out short maxData )
inline

指定した ID のCPU温度の範囲(CpuTemp)を取得します

MemREADを使用して指定したIDからCPU温度(CpuTemp)の設定可能な範囲を取得します。

引数
idPMXサーボモータのID番号
minDataCpuTempの最小値
maxDataCpuTempの最大値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCurrent()

ushort PMX.PmxBase.getCurrent ( byte id,
out short curData )
inline

指定した ID の現在の電流を取得します。

 MemREADを使用して指定したIDから現在電流を取得します。

引数
idPMXサーボモータのID番号
curData現在の電流データ
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCurrentLimit()

ushort PMX.PmxBase.getCurrentLimit ( byte id,
out ushort data )
inline

指定したIDの電流リミット値を取得します。

MemREADを使用して指定したIDから電流リミット値を取得します。

引数
idPMXサーボモータのID番号
data電流リミット値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCurrentLimitPower()

ushort PMX.PmxBase.getCurrentLimitPower ( byte id,
out ushort data )
inline

指定したIDの電流リミットを超えた時の出力割合を取得します。

MemREADを使用して指定したIDから電流リミットを超えた時の出力割合を取得します。

引数
idPMXサーボモータのID番号
data電流リミット時の出力割合(%)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCurrentLimitRange()

ushort PMX.PmxBase.getCurrentLimitRange ( byte id,
out ushort minData,
out ushort maxData )
inline

指定した ID の電流(Current)の設定可能な範囲を取得します

MemREADを使用して指定したIDから電流(Current)の範囲を取得します。

引数
idPMXサーボモータのID番号
minDataCurrentの最小値
maxDataCurrentの最大値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCwPositionLimit()

ushort PMX.PmxBase.getCwPositionLimit ( byte id,
out short data )
inline

指定したIDのCW方向の動作角度リミット値を取得します。

MemREADを使用して指定したIDからCW方向の動作角度リミット値を取得します。

引数
idPMXサーボモータのID番号
dataCW方向の動作角度リミット値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCwPositionLimitPower()

ushort PMX.PmxBase.getCwPositionLimitPower ( byte id,
out ushort data )
inline

指定したIDのCW側の角度を超えた時の出力の割合を取得します。

MemREADを使用して指定したIDからCW側の角度を超えた時の出力の割合を取得します。

引数
idPMXサーボモータのID番号
dataCW方向の閾値外時の出力割合(%)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getCwPositionLimitRange()

ushort PMX.PmxBase.getCwPositionLimitRange ( byte id,
out short minData,
out short maxData )
inline

指定したIDの指定したCW方向の動作角度リミット値(CwPosition)の設定可能な範囲を取得します

MemREADを使用して指定したIDから指定したCW方向の動作角度リミット値(CwPosition)の範囲を取得します。

引数
idPMXサーボモータのID番号
minDataCwPositionの最小値
maxDataCwPositionの最大値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getDafaultPidGain()

ushort PMX.PmxBase.getDafaultPidGain ( byte id,
ushort pAddr,
out uint kpdata,
out uint kidata,
out uint kddata,
out uint stdata )
inline

指定した ID の PID ゲインを取得します。

引数
idPMXサーボモータのID番号
pAddrPIDゲインのkpが保存されている先頭のアドレス
kpdata読み取ったPゲイン
kidata読み取ったIゲイン
kddata読み取ったDゲイン
stdata読み取ったストレッチゲイン
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getEncoder()

ushort PMX.PmxBase.getEncoder ( byte id,
out ushort encData )
inline

指定された ID のエンコーダを取得します。

MemREADを使用して指定したIDからエンコーダを取得します。

引数
idPMXサーボモータのID番号
encDataエンコーダデータ
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getFullStatus()

ushort PMX.PmxBase.getFullStatus ( byte id,
out byte sysSt,
out byte motorSt,
out ushort ramSt )
inline

指定した ID の全てのステータス情報を取得します。

MemREADを使用して指定したIDから全てのステータスを取得します。

詳しくは取扱説明書をご覧ください。PMXのオンラインマニュアル

引数
idPMXサーボモータのID番号
sysStシステムステータスデータ
motorStモータステータスデータ
ramStアクセスエラーになったRAMの先頭アドレス
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
この関数を呼ぶとサーボ内のエラー値はリセットされます。

◆ getInputVoltage()

ushort PMX.PmxBase.getInputVoltage ( byte id,
out ushort volData )
inline

指定された ID の現在の電圧を取得します。

MemREADを使用して指定したIDから現在電圧を取得します。

引数
idPMXサーボモータのID番号
volData現在の電圧データ
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getLedMode()

ushort PMX.PmxBase.getLedMode ( byte id,
out byte ledData )
inline

指定したID のLED点灯モードを取得します。

引数
idPMXサーボモータのID番号
ledDataLED点灯モード
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getLockDetectOutputPower()

ushort PMX.PmxBase.getLockDetectOutputPower ( byte id,
out ushort data )
inline

指定したIDがロック検知が起きた時の出力の割合を取得します。

MemREADを使用して指定したIDからロック検知が起きた時の出力の割合を取得します。

引数
idPMXサーボモータのID番号
dataロック検知時の出力割合(%)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getLockDetectTime()

ushort PMX.PmxBase.getLockDetectTime ( byte id,
out ushort data )
inline

指定したIDのロック検知を認識するまでの時間を取得します。

MemREADを使用して指定したIDからロック検知を認識するまでの時間を取得します。

引数
idPMXサーボモータのID番号
dataロック検知を認識するまでの時間
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getLockThresholdPower()

ushort PMX.PmxBase.getLockThresholdPower ( byte id,
out ushort data )
inline

指定したIDのロック検知を開始する出力指示の閾値を取得します。

MemREADを使用して指定したIDからロック検知を開始する出力指示の閾値を取得します。

引数
idPMXサーボモータのID番号
dataロック検知開始出力(%)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
覚え書き
位置制御モードのみで位置制御を含まないモードの場合は使用しません。

◆ getMaxGoalCurrent()

ushort PMX.PmxBase.getMaxGoalCurrent ( byte id,
out short data )
inline

指定したIDの指令可能な最大電流値を取得します。

MemREADを使用して指定したIDから指令可能な最大電流値を取得します。

引数
idPMXサーボモータのID番号
data最大電流指令値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
最大電流指令値を超えて電流指示した場合はエラーが返り、実行はされません。

◆ getMaxGoalCurrentRange()

ushort PMX.PmxBase.getMaxGoalCurrentRange ( byte id,
out short minData,
out short maxData )
inline

指定した ID の最大電流指令値(MaxGoalCurrent)の設定可能な範囲を取得します

MemREADを使用して指定したIDから最大電流指令値(MaxGoalCurrent)の範囲を取得します。

引数
idPMXサーボモータのID番号
minDataMaxGoalCurrentの最小値
maxDataMaxGoalCurrentの最大値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getMaxGoalSpeed()

ushort PMX.PmxBase.getMaxGoalSpeed ( byte id,
out short data )
inline

指定したIDの指令可能な最大速度値を取得します。

MemREADを使用して指定したIDから指令可能な最大速度値を取得します。

引数
idPMXサーボモータのID番号
data最大速度指令値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
最大速度指令値を超えて速度指示した場合はエラーが返り、実行はされません。

◆ getMaxGoalSpeedRange()

ushort PMX.PmxBase.getMaxGoalSpeedRange ( byte id,
out short minData,
out short maxData )
inline

指定した ID の最大速度指令値(MaxGoalSpeed)の設定可能な範囲を取得します。

MemREADを使用して指定したIDから最大速度指令値(MaxGoalSpeed)の範囲を取得します。

引数
idPMXサーボモータのID番号
minDataMaxGoalSpeedの最小値
maxDataMaxGoalSpeedの最大値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getMaxGoalTorque()

ushort PMX.PmxBase.getMaxGoalTorque ( byte id,
out short data )
inline

指定したIDの指令可能な最大推定トルク値を取得します。

MemREADを使用して指定したIDから指令可能な最大推定トルク値を取得します。

引数
idPMXサーボモータのID番号
data最大動推定トルク指令値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
最大推定トルク指令値を超えてトルク指示した場合はエラーが返り、実行はされません。

◆ getMaxGoalTorqueRange()

ushort PMX.PmxBase.getMaxGoalTorqueRange ( byte id,
out short minData,
out short maxData )
inline

指定した ID の最大トルク指令値(MaxGoalTorque)の設定可能な範囲を取得します

MemREADを使用して指定したIDから最大トルク指令値(MaxGoalTorque)の範囲を取得します。

引数
idPMXサーボモータのID番号
minDataMaxGoalTorqueの最小値
maxDataMaxGoalTorqueの最大値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getMaxVoltageLimit()

ushort PMX.PmxBase.getMaxVoltageLimit ( byte id,
out ushort data )
inline

指定したIDの上限リミット電圧を取得します。

MemREADを使用して指定したIDから上限リミット電圧を取得します。

引数
idPMXサーボモータのID番号
data
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getMaxVoltageLimitPower()

ushort PMX.PmxBase.getMaxVoltageLimitPower ( byte id,
out ushort data )
inline

指定したIDの上限リミット電圧を超えた場合の出力割合を取得します。

MemREADを使用して指定したIDから上限リミット電圧を超えた場合の出力割合を取得します。

引数
idPMXサーボモータのID番号
data上限リミット電圧を上回った時の出力割合(%)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getMaxVoltageLimitRange()

ushort PMX.PmxBase.getMaxVoltageLimitRange ( byte id,
out ushort minData,
out ushort maxData )
inline

指定した ID の最大電圧(MaxVoltage)の設定可能な範囲を取得します

MemREADを使用して指定したIDから最大電圧(MaxVoltage)の範囲を取得します。

引数
idPMXサーボモータのID番号
minDataMaxVoltageの最小値
maxDataMaxVoltageの最大値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getMinVoltageLimit()

ushort PMX.PmxBase.getMinVoltageLimit ( byte id,
out ushort data )
inline

指定したIDの下限電圧リミット値を取得します。

MemREADを使用して指定したIDから下限電圧リミット値を取得します。

引数
idPMXサーボモータのID番号
data下限電圧設定値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getMinVoltageLimitPower()

ushort PMX.PmxBase.getMinVoltageLimitPower ( byte id,
out ushort data )
inline

指定したIDの下限リミット電圧を下回った場合の出力割合を取得します。

MemREADを使用して指定したIDから下限リミット電圧を下回った場合の出力割合を取得します。

引数
idPMXサーボモータのID番号
data下限リミット電圧を下回った時の出力割合(%)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getMinVoltageLimitRange()

ushort PMX.PmxBase.getMinVoltageLimitRange ( byte id,
out ushort minData,
out ushort maxData )
inline

指定したIDの入力最小電圧リミット値(MinVoltageLimit)の設定可能な最小/最大の範囲を取得します

MemREADを使用して指定したIDから入力最小電圧リミット値(MinVoltageLimit)の設定可能な最小/最大の範囲を取得します。

引数
idPMXサーボモータのID番号
minDataMinVoltageLimitの最小値
maxDataMinVoltageLimitの最大値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getModelNum() [1/2]

ushort PMX.PmxBase.getModelNum ( byte id,
out uint modelFullNum )
inline

指定したIDのサーボからモデル番号を取得します。

引数
idPMXサーボモータのID番号
modelFullNumモデル番号
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getModelNum() [2/2]

ushort PMX.PmxBase.getModelNum ( byte id,
out ushort modelNum,
out ushort seriesNum )
inline

指定したIDのサーボからモデル番号、シリーズ番号を取得します。

引数
idPMXサーボモータのID番号
modelNumモデル番号
seriesNumシリーズ番号
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getMotorReceive()

ushort PMX.PmxBase.getMotorReceive ( byte id,
out byte receiveMode )
inline

指定した ID の応答データ指定値を取得します。

MemREADを使用して指定したIDから応答データ指定値を取得します。

引数
idPMXサーボモータのID番号
receiveMode応答データ指定値(PMX.ReceiveDataOptionを参照)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getMotorStatus()

ushort PMX.PmxBase.getMotorStatus ( byte id,
out byte motStaData )
inline

指定したIDのモータステータスを取得します。

MemREADを使用して指定したIDからモータステータスを取得します。

詳しくは取扱説明書をご覧ください。PMXのオンラインマニュアル

引数
idPMXサーボモータのID番号
motStaDataモータステータスデータ
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
この関数を呼ぶとサーボ内のエラー値はリセットされます。

◆ getMotorTemp()

ushort PMX.PmxBase.getMotorTemp ( byte id,
out short motTempData )
inline

指定したIDの現在のモータ温度を取得します。

MemREADを使用して指定したIDから現在モータ温度を取得します。

引数
idPMXサーボモータのID番号
motTempData現在のモータ温度データ
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getMotorTempLimit()

ushort PMX.PmxBase.getMotorTempLimit ( byte id,
out short data )
inline

指定したIDのモータ温度リミット値を取得します。

MemREADを使用して指定したIDからモータ温度リミット値を取得します。

引数
idPMXサーボモータのID番号
dataモータ温度リミット値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getMotorTempLimitPower()

ushort PMX.PmxBase.getMotorTempLimitPower ( byte id,
out ushort data )
inline

指定したIDのモータ温度リミットを超えた時の出力割合を取得します。

MemREADを使用して指定したIDからモータ温度リミットを超えた時の出力割合を取得します。

引数
idPMXサーボモータのID番号
dataモータ温度リミット時の出力割合(%)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getMotorTempLimitRange()

ushort PMX.PmxBase.getMotorTempLimitRange ( byte id,
out short minData,
out short maxData )
inline

指定した ID のモータ温度(MotorTemp)の範囲を取得します

MemREADを使用して指定したIDからモータ温度(MotorTemp)の設定可能な範囲を取得します

引数
idPMXサーボモータのID番号
minDataMotorTempの最小値
maxDataMotorTempの最大値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getPosition() [1/3]

ushort PMX.PmxBase.getPosition ( byte id,
out int posData,
byte controlMode = 0x01 )
inline

指定したIDの現在の位置を取得します。

MemREADを使用して指定したIDから現在位置を取得します。

PMXでは、位置制御モードが含まれるとデータが符号あり(±320deg)、含まれない場合は符号なし(0-360deg)のデータが返ってきます

引数
idPMXサーボモータのID番号
posData現在の位置データ。位置制御モードによって符号有り無しが変わります。
controlMode制御モードを入れます。デフォルトは0x01です。位置制御モードが含まれるかどうかに使用します。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)


◆ getPosition() [2/3]

ushort PMX.PmxBase.getPosition ( byte id,
out short posData )
inline

指定したIDの現在指示位置を取得します。

指定したIDの位置制御を含む時の現在位置を取得します。

引数
idPMXサーボモータのID番号
posData位置制御を含む時の現在位置
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getPosition() [3/3]

ushort PMX.PmxBase.getPosition ( byte id,
out ushort posData )
inline

指定したIDの現在指示位置を取得します。

指定したIDの位置制御を含まない時の現在位置を取得します。

引数
idPMXサーボモータのID番号
posData位置制御を含まない現在位置
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getPresetAllPidGains()

ushort PMX.PmxBase.getPresetAllPidGains ( byte id,
byte presetNum,
out List< uint > gainList )
inline

指定した ID 、プリセット番号の PID ゲインを位置からトルクまで全て取得します。

引数
idPMXサーボモータのID番号
presetNumプリセット番号
gainList読み取ったPIDゲインのデータリスト(16データ)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getPresetPidGains()

ushort PMX.PmxBase.getPresetPidGains ( byte id,
byte presetNum,
byte gainType,
out uint kpdata,
out uint kidata,
out uint kddata,
out uint stdata )
inline

指定した ID 、プリセット番号、ゲインタイプのPID ゲインを取得します。

引数
idPMXサーボモータのID番号
presetNumプリセット番号
gainTypeゲインタイプ(0:位置制御ゲイン,1:速度制御ゲイン,2:電流制御ゲイン,3:トルク制御ゲイン)
kpdata読み取ったPゲイン
kidata読み取ったIゲイン
kddata読み取ったDゲイン
stdata読み取ったストレッチゲイン
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getPwm()

ushort PMX.PmxBase.getPwm ( byte id,
out short pwmData )
inline

指定したIDの現在のPWMを取得します。

MemREADを使用して指定したIDから現在PWMを取得します。

引数
idPMXサーボモータのID番号
pwmData現在のPWMデータ
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getRamAccessStatus()

ushort PMX.PmxBase.getRamAccessStatus ( byte id,
out ushort ramStaData )
inline

指定された ID のRAMアクセスステータスを取得します。

MemREADを使用して指定したIDからRAMアクセスステータスを取得します。

詳しくは取扱説明書をご覧ください。PMXのオンラインマニュアル

引数
idPMXサーボモータのID番号
ramStaDataアクセスエラーになったRAMの先頭アドレス
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
この関数を呼ぶとサーボ内のエラー値はリセットされます。

◆ getResponseTime()

ushort PMX.PmxBase.getResponseTime ( byte id,
out byte respTime )
inline

システム読み取り操作のステータスと応答時間を取得します。

引数
idPMXサーボモータのID番号
respTime応答時間[us]。通信が失敗した場合はNoneが返ります。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getSerialNumber() [1/2]

ushort PMX.PmxBase.getSerialNumber ( byte id,
out byte[] serialByteNum )
inline

指定したIDのサーボからシリアル番号を取得します。

引数
idPMXサーボモータのID番号
serialByteNumbyte配列のシリアル番号。通信が失敗した場合はNoneが返ります。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getSerialNumber() [2/2]

ushort PMX.PmxBase.getSerialNumber ( byte id,
out uint serialintNum )
inline

指定したIDのサーボからシリアル番号を取得します。

引数
idPMXサーボモータのID番号
serialintNumシリアル番号。通信が失敗した場合はNoneが返ります。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getSpeed()

ushort PMX.PmxBase.getSpeed ( byte id,
out short spdData )
inline

指定した ID の現在の速度を取得します。

 MemREADを使用して指定したIDから現在速度を取得します。

引数
idPMXサーボモータのID番号
spdData現在の速度データ
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getStatus()

ushort PMX.PmxBase.getStatus ( byte id,
out byte stData )
inline

指定したIDのステータスを取得します。

MemREADを使用して指定したIDからステータスを取得します。

詳しくは取扱説明書をご覧ください。PMXのオンラインマニュアル

引数
idPMXサーボモータのID番号
stDataステータスデータ
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
この関数を呼ぶとサーボ内のエラー値はリセットされます。

◆ getSystemStatus()

ushort PMX.PmxBase.getSystemStatus ( byte id,
out byte sysStaData )
inline

指定された ID のシステムステータスを取得します。

MemREADを使用して指定したIDからシステムステータスを取得します。

詳しくは取扱説明書をご覧ください。PMXのオンラインマニュアル

引数
idPMXサーボモータのID番号
sysStaDataシステムステータスデータ
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
この関数を呼ぶとサーボ内のエラー値はリセットされます。

◆ getTorque()

ushort PMX.PmxBase.getTorque ( byte id,
out short trqData )
inline

指定した ID の現在のトルクを取得します。

MemREADを使用して指定したIDから現在の推定トルクを取得します。

引数
idPMXサーボモータのID番号
trqData現在の推定トルクデータ
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getTorqueSwitch()

ushort PMX.PmxBase.getTorqueSwitch ( byte id,
out byte trqSwitchData )
inline

指定した ID のトルク ON 値を取得します。

MemREADを使用して指定したIDからトルクON値を取得します。

引数
idPMXサーボモータのID番号
trqSwitchDataFreeやTorqueOnの値(PMX.TorqueSwitchTypeを参照)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getTotalPowerRate()

ushort PMX.PmxBase.getTotalPowerRate ( byte id,
out ushort data )
inline

指定したIDのモータに出力する割合を取得します。

MemREADを使用して指定したIDからモータに出力する割合を取得します。

引数
idPMXサーボモータのID番号
dataモータ出力割合(%)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
覚え書き
出力のリミットではなく全体的にモータ出力を可変させます。

◆ getTrajectory()

ushort PMX.PmxBase.getTrajectory ( byte id,
out byte traData )
inline

指定した ID の補間制御軌道生成タイプ指定を取得します

MemREADを使用して指定したIDから補間制御軌道生成タイプ指定を取得します。

引数
idPMXサーボモータのID番号
traData補間制御軌道生成タイプ指定(PMX.TrajectoryTypeを参照)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getTrajectoryTime()

ushort PMX.PmxBase.getTrajectoryTime ( byte id,
out ushort traTimeData )
inline

指定された ID の現在の補間時間を取得します。

MemREADを使用して指定したIDから現在補間時間を取得します。

引数
idPMXサーボモータのID番号
traTimeData現在の補間時間データ
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ getVersion()

ushort PMX.PmxBase.getVersion ( byte id,
out byte[] verData )
inline

指定したIDからファームウェアのバージョン番号を取得します。

引数
idPMXサーボモータのID番号
verDataバージョン番号のタプル[MAJOR,MINOR,PATCH,BUILD]。通信が失敗した場合はNoneが返ります
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ LOAD()

ushort PMX.PmxBase.LOAD ( byte id)
inline

PMXサーボモータのLOADコマンドを発行し、ステータス結果を取得します。

引数
idPMXサーボモータのID番号
戻り値
unsigned short LOADの送受信結果(送信結果+PMXのstatus)

◆ MemREAD()

ushort PMX.PmxBase.MemREAD ( byte id,
ushort addr,
int readDataSize,
out List< byte > rxData )
inline

MemREADコマンドでPMXサーボモータからデータを取得します。

引数
idPMXサーボモータのID番号
addrデータを読み取る先頭のアドレス
readDataSize取得するデータサイズ
rxData指定されたアドレスから読み取ったデータ配列(bytes型)。通信失敗時にはNoneを返します。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ MemREADToByte()

ushort PMX.PmxBase.MemREADToByte ( byte id,
ushort addr,
out byte byteData )
inline

MemREADで取得したデータをbyte(符号なし1byte)に変換して取得します。

引数
idPMXサーボモータのID番号
addrデータを読み取る先頭のアドレス
byteData指定されたアドレスから読み取ったbyte(符号なし1byte)のデータ。通信失敗時にはNoneを返します。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ MemREADToInt16()

ushort PMX.PmxBase.MemREADToInt16 ( byte id,
ushort addr,
out short int16Data )
inline

MemREADで取得したデータをint16(符号あり2byte)に変換して取得します。

引数
idPMXサーボモータのID番号
addrデータを読み取る先頭のアドレス
int16Data指定されたアドレスから読み取ったint16(符号あり2byte)のデータ。通信失敗時にはNoneを返します。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ MemREADToInt32()

ushort PMX.PmxBase.MemREADToInt32 ( byte id,
ushort addr,
out int int32Data )
inline

MemREADで取得したデータをint32(符号あり4byte)に変換して取得します。

引数
idPMXサーボモータのID番号
addrデータを読み取る先頭のアドレス
int32Data指定されたアドレスから読み取ったint32(符号あり4byte)のデータ。通信失敗時にはNoneを返します。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ MemREADToUint16()

ushort PMX.PmxBase.MemREADToUint16 ( byte id,
ushort addr,
out ushort uint16Data )
inline

MemREADで取得したデータをUint16(符号なし2byte)に変換して取得します。

引数
idPMXサーボモータのID番号
addrデータを読み取る先頭のアドレス
uint16Data指定されたアドレスから読み取ったUint16(符号なし2byte)のデータ。通信失敗時にはNoneを返します。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ MemREADToUint32()

ushort PMX.PmxBase.MemREADToUint32 ( byte id,
ushort addr,
out uint uint32Data )
inline

MemREADで取得したデータをUint32(符号なし4byte)に変換して取得します。

引数
idPMXサーボモータのID番号
addrデータを読み取る先頭のアドレス
uint32Data指定されたアドレスから読み取ったUint32(符号なし4byte)のデータ。通信失敗時にはNoneを返します。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ MemWRITE()

ushort PMX.PmxBase.MemWRITE ( byte id,
ushort addr,
byte[] txDataArray,
byte writeOpt = 0 )
inline

PMXサーボモータにMemWRITEコマンドを発行し、結果を取得します。

引数
idPMXサーボモータのID番号
addrデータを読み取る先頭のアドレス
txDataArray書き込むデータのbyteリスト
writeOptMemWRITEで使用するオプション 0:通常書き込み、1:TorqueOn中の強制書き込み
戻り値
unsigned short MemWRITEの送受信結果(送信結果+PMXのstatus)

◆ MemWRITEToByte()

ushort PMX.PmxBase.MemWRITEToByte ( byte id,
ushort addr,
byte byteData,
byte writeOpt = 0 )
inline

MemWRITEでbyte(符号なし1byte)のデータを書き込みます。その結果のステータス情報を返信します。

引数
idPMXサーボモータのID番号
addrデータを読み取る先頭のアドレス
byteDatabyte(符号なし1byte)の書きこみデータ
writeOptMemWRITEで使用するオプション 0:通常書き込み、1:TorqueOn中の強制書き込み
戻り値
unsigned short MemWRITEの送受信結果(送信結果+PMXのstatus)

◆ MemWRITEToInt16()

ushort PMX.PmxBase.MemWRITEToInt16 ( byte id,
ushort addr,
short int16Data,
byte writeOpt = 0 )
inline

MemWRITEでint16(符号あり2byte)のデータを書き込みます。その結果のステータス情報を返信します。

引数
idPMXサーボモータのID番号
addrデータを読み取る先頭のアドレス
int16Dataint16(符号あり2byte)の書きこみデータ
writeOptMemWRITEで使用するオプション 0:通常書き込み、1:TorqueOn中の強制書き込み
戻り値
unsigned short MemWRITEの送受信結果(送信結果+PMXのstatus)

◆ MemWRITEToInt32()

ushort PMX.PmxBase.MemWRITEToInt32 ( byte id,
ushort addr,
int int32Data,
byte writeOpt = 0 )
inline

MemWRITEでint32(符号あり4byte)のデータを書き込みます。その結果のステータス情報を返信します。

引数
idPMXサーボモータのID番号
addrデータを読み取る先頭のアドレス
int32Dataint32(符号あり4byte)の書きこみデータ
writeOptMemWRITEで使用するオプション 0:通常書き込み、1:TorqueOn中の強制書き込み
戻り値
unsigned short MemWRITEの送受信結果(送信結果+PMXのstatus)

◆ MemWRITEToUint16()

ushort PMX.PmxBase.MemWRITEToUint16 ( byte id,
ushort addr,
ushort uint16Data,
byte writeOpt = 0 )
inline

MemWRITEでUint16(符号なし2byte)のデータを書き込みます。その結果のステータス情報を返信します。

引数
idPMXサーボモータのID番号
addrデータを読み取る先頭のアドレス
uint16DataUint16(符号なし2byte)の書きこみデータ
writeOptMemWRITEで使用するオプション 0:通常書き込み、1:TorqueOn中の強制書き込み
戻り値
unsigned short MemWRITEの送受信結果(送信結果+PMXのstatus)

◆ MemWRITEToUint32()

ushort PMX.PmxBase.MemWRITEToUint32 ( byte id,
ushort addr,
uint uint32Data,
byte writeOpt = 0 )
inline

MemWRITEでUint32(符号なし4byte)のデータを書き込みます。その結果のステータス情報を返信します。

引数
idPMXサーボモータのID番号
addrデータを読み取る先頭のアドレス
uint32DataUint32(符号なし4byte)の書きこみデータ
writeOptMemWRITEで使用するオプション 0:通常書き込み、1:TorqueOn中の強制書き込み
戻り値
unsigned short MemWRITEの送受信結果(送信結果+PMXのstatus)

◆ MotorREAD() [1/2]

ushort PMX.PmxBase.MotorREAD ( byte id,
byte receiveMode,
out byte torqueSw,
out int[] receiveData,
byte controlMode = 0x01 )
inline

MotorREAD関数を発行し、応答モードに応じてデータとトルクスイッチの状態を取得します。

引数
idPMXサーボモータのID番号
receiveMode応答モード。事前に応答モードをMemWrite関数やsetMotorReceive関数で設定する必要があります。
receiveDataMotorReadで読み取ったデータ配列[位置,速度,電流,トルク,PWM,モータ温度,CPU温度,電圧](合計8項目)
torqueSwFreeやTorqueOnの値(PMX.TorqueSwitchTypeを参照)
controlMode制御モード。デフォルト値は 0x01 です。位置制御モードの時の現在位置を判定するときに使用します。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
rxDataListでデータがない場合はリストの中身の各データがNoneになります。

◆ MotorREAD() [2/2]

ushort PMX.PmxBase.MotorREAD ( byte id,
byte receiveMode,
out int[] receiveData,
byte controlMode = 0x01 )
inline

MotorREAD関数を発行し、応答モードに応じてデータを取得します。

引数
idPMXサーボモータのID番号
receiveMode応答モード。事前に応答モードをMemWrite関数やsetMotorReceive関数で設定する必要があります。
receiveDataMotorReadで読み取ったデータ配列[位置,速度,電流,トルク,PWM,モータ温度,CPU温度,電圧](合計8項目)
controlMode制御モード。デフォルト値は 0x01 です。位置制御モードの時の現在位置を判定するときに使用します。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
rxDataListでデータがない場合はリストの中身の各データがNoneになります。

◆ MotorWRITE() [1/4]

ushort PMX.PmxBase.MotorWRITE ( byte id,
byte torqueOnSw )
inline

MotorWRITE 機能は、モータの制御やトルクのオン/オフを切り替えるコマンドを送信し、モーターからステータスとデータを受信します。

引数
idPMXサーボモータのID番号
torqueOnSwFreeやTorqueOnの値(PMX.TorqueSwitchTypeを参照)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ MotorWRITE() [2/4]

ushort PMX.PmxBase.MotorWRITE ( byte id,
byte torqueSw,
byte receiveMode,
out int[] receiveData,
byte controlMode = 0x01 )
inline

MotorWRITE 機能は、モータの制御やトルクのオン/オフを切り替えるコマンドを送信し、モーターからステータスとデータを受信します。

引数
idPMXサーボモータのID番号
torqueOnSwFreeやTorqueOnの値(PMX.TorqueSwitchTypeを参照)
receiveMode応答モード。返ってきたデータを変換するときに使用します。
receiveDataMotorReadで読み取ったデータ[位置,速度,電流,トルク,PWM,モータ温度,CPU温度,電圧](合計8項目)
controlModeモータの制御モード。応答モードで現在位置を取得する時のみに使用します
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ MotorWRITE() [3/4]

ushort PMX.PmxBase.MotorWRITE ( byte id,
int[] writeDatas )
inline

MotorWRITE 機能は、モータの制御やトルクのオン/オフを切り替えるコマンドを送信し、モーターからステータスとデータを受信します。

引数
idPMXサーボモータのID番号
writeDatasモータへの指示値を格納
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ MotorWRITE() [4/4]

ushort PMX.PmxBase.MotorWRITE ( byte id,
int[] writeDatas,
byte receiveMode,
out int[] receiveData,
byte controlMode = 0x01 )
inline

MotorWRITE 機能は、モータの制御やトルクのオン/オフを切り替えるコマンドを送信し、モーターからステータスとデータを受信します。

引数
idサーボモータのID
writeDatasモータへの指示値を格納
receiveMode応答モード。返ってきたデータを変換するときに使用します。
receiveDataMotorReadで読み取ったデータ[位置,速度,電流,トルク,PWM,モータ温度,CPU温度,電圧](合計8項目)
controlModeモータの制御モード。応答モードで現在位置を取得する時のみに使用します
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
writeDatasは、位置 > 速度 > 電流 > トルク > PWM > 時間 の順番に格納される
位置/電流制御モードの場合は[position, current] をwriteDatasに渡します
writeDatasは使わないデータ(位置/電流の時のPWM等)は書かない
警告
writeDatasの順番を間違えない事
複数組み合わせの場合で1つだけ変えるときでも全ての目標値を送ってください。
controlModeやreceiveModeは事前に設定をする事
注意
rxDataListでデータがない場合はリストの中身の各データがNoneになります

◆ MotorWRITEDouble() [1/2]

ushort PMX.PmxBase.MotorWRITEDouble ( byte id,
int targetVal1,
int targetVal2 )
inline

MotorWRITEを使用して2変数を指示するときに使用します。

引数
idPMXサーボモータのID番号
targetVal1目標値1(位置、速度、電流、トルク、PWM)が入ります
targetVal2目標値2(速度、電流、トルク、PWM、時間)が入ります
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ MotorWRITEDouble() [2/2]

ushort PMX.PmxBase.MotorWRITEDouble ( byte id,
int targetVal1,
int targetVal2,
byte receiveMode,
out int[] receiveData,
byte controlMode = 0x01 )
inline

MotorWRITEを使用して2変数を指示するときに使用します。

引数
idPMXサーボモータのID番号
targetVal1目標値1(位置、速度、電流、トルク、PWM)が入ります
targetVal2目標値2(速度、電流、トルク、PWM、時間)が入ります
receiveMode応答モード。返ってきたデータを変換するときに使用します。
receiveDataMotorReadで読み取ったデータ[位置,速度,電流,トルク,PWM,モータ温度,CPU温度,電圧](合計8項目)
controlModeモータの制御モード。応答モードで現在位置を取得する時のみに使用します。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ MotorWRITESingle() [1/2]

ushort PMX.PmxBase.MotorWRITESingle ( byte id,
int targetVal )
inline

MotorWRITEでデータ指示一つの場合に使用します

引数
idPMXサーボモータのID番号
targetVal目標値(位置、速度、電流、トルク、PWM)が入ります
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ MotorWRITESingle() [2/2]

ushort PMX.PmxBase.MotorWRITESingle ( byte id,
int targetVal,
byte receiveMode,
out int[] receiveData,
byte controlMode = 0x01 )
inline

MotorWRITEでデータ指示一つの場合に使用します

引数
idPMXサーボモータのID番号
targetVal目標値(位置、速度、電流、トルク、PWM)が入ります
receiveMode応答モード。返ってきたデータを変換するときに使用します。
receiveDataMotorReadで読み取ったデータ[位置,速度,電流,トルク,PWM,モータ温度,CPU温度,電圧](合計8項目)
controlModeモータの制御モード。応答モードで現在位置を取得する時のみに使用します。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ MotorWRITETriple() [1/2]

ushort PMX.PmxBase.MotorWRITETriple ( byte id,
int targetVal1,
int targetVal2,
int targetVal3 )
inline

MotorWRITEを使用して3変数を指示するときに使用します。

引数
idPMXサーボモータのID番号
targetVal1目標値1(位置、速度、電流、トルク、PWM)のどれかが入ります
targetVal2目標値2(速度、電流、トルク、PWM、時間)のどれかが入ります
targetVal3目標値3(電流、トルク、PWM、時間)のどれかが入ります
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ MotorWRITETriple() [2/2]

ushort PMX.PmxBase.MotorWRITETriple ( byte id,
int targetVal1,
int targetVal2,
int targetVal3,
byte receiveMode,
out int[] receiveData,
byte controlMode = 0x01 )
inline

MotorWRITEを使用して3変数を指示するときに使用します。

引数
idPMXサーボモータのID番号
targetVal1目標値1(位置、速度、電流、トルク、PWM)のどれかが入ります
targetVal2目標値2(速度、電流、トルク、PWM、時間)のどれかが入ります
targetVal3目標値3(電流、トルク、PWM、時間)のどれかが入ります
receiveMode応答モード。返ってきたデータを変換するときに使用します。
receiveDataMotorReadで読み取ったデータ[位置,速度,電流,トルク,PWM,モータ温度,CPU温度,電圧](合計8項目)
controlModeモータの制御モード。応答モードで現在位置を取得する時のみに使用します。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ ReBoot()

ushort PMX.PmxBase.ReBoot ( byte id,
int resetTime )
inline

サーボモータを再起動させます。

引数
idPMXサーボモータのID番号
resetTime再起動まで待つ時間(ms)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
ReBoot中はWrite等を行ってもエラーが返ってきます。
ReBoot直後は内部パラメータを読み込むまでデータは返ってきません

◆ resetFullStatus()

ushort PMX.PmxBase.resetFullStatus ( byte id)
inline

指定された ID の全てのステータス情報をリセットします。

MemREADを使用して指定したIDから全てのステータス情報を取得します。

詳しくは取扱説明書をご覧ください。PMXのオンラインマニュアル

引数
idPMXサーボモータのID番号
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ SAVE()

ushort PMX.PmxBase.SAVE ( byte id)
inline

PMXサーボモータのSAVEコマンドを発行し、ステータス結果を取得します。

引数
idPMXサーボモータのID番号
戻り値
unsigned short SAVEコマンドの送信結果(送信結果+PMXのstatus)

◆ setAllPresetNum()

ushort PMX.PmxBase.setAllPresetNum ( byte id,
byte presetNum,
byte writeOpt = 0 )
inline

指定した ID の全てのプリセット番号を設定します。

引数
idPMXサーボモータのID番号
presetNumプリセット番号
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setBaudrate()

ushort PMX.PmxBase.setBaudrate ( byte id,
int newBaudrate )
inline

指定したIDの通信速度を設定します

引数
idPMXサーボモータのID番号
newBaudrate通信速度
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
シリアル番号がNoneの場合はSystemWRITE関数内で読み込みます。
通信速度は関数内でPMXの通信速度値に変換するので通信速度は直接渡してください。

◆ setCenterOffset()

ushort PMX.PmxBase.setCenterOffset ( byte id,
short offsetData )
inline

指定した ID の中央値オフセット値を設定します。

引数
idPMXサーボモータのID番号
offsetData中央値オフセット値
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
範囲外のデータを受け取った場合statusにエラーが返ってきます
エラー時は実行されません。

◆ setCloneReverse()

ushort PMX.PmxBase.setCloneReverse ( byte id,
byte data )
inline

指定した ID のクローン/リバースを設定します。

引数
idPMXサーボモータのID番号
dataクローン/リバースを設定する値。クローンなら1、リバースなら2を入力します。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setControlMode()

ushort PMX.PmxBase.setControlMode ( byte id,
byte controlMode,
byte writeOpt = 0 )
inline

指定された ID の位置制御などの制御モードを設定します。

引数
idPMXサーボモータのID番号
controlModeモータに設定する制御モード(PMX.ControlModeを参照)
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setCpuTempLimit()

ushort PMX.PmxBase.setCpuTempLimit ( byte id,
short cpuTemp,
ushort limPower,
byte writeOpt = 0 )
inline

指定した ID のCPU温度最大値を上回った時の挙動を設定します。

引数
idPMXサーボモータのID番号
cpuTempCPU温度最大値
limPowerCPU温度最大時の出力%値
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
範囲外のデータを受け取った場合statusにエラーが返ってきます
エラー時は実行されません。

◆ setCurrentGain()

ushort PMX.PmxBase.setCurrentGain ( byte id,
uint kpdata,
uint kidata,
uint kddata,
byte writeOpt = 0 )
inline

指定した ID のプリセット1の電流制御のPIDゲインを変更します。

引数
idPMXサーボモータのID番号
kpdata電流制御のPゲイン
kidata電流制御のIゲイン
kddata電流制御のDゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setCurrentKdGain()

ushort PMX.PmxBase.setCurrentKdGain ( byte id,
uint data,
byte writeOpt = 0 )
inline

指定した ID のプリセット1の電流制御のDゲインを変更します。

引数
idPMXサーボモータのID番号
data電流制御のDゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setCurrentKiGain()

ushort PMX.PmxBase.setCurrentKiGain ( byte id,
uint data,
byte writeOpt = 0 )
inline

指定した ID のプリセット1の電流制御のIゲインを変更します。

引数
idPMXサーボモータのID番号
data電流制御のIゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setCurrentKpGain()

ushort PMX.PmxBase.setCurrentKpGain ( byte id,
uint data,
byte writeOpt = 0 )
inline

指定した ID のプリセット1の電流制御のPゲインを変更します。

引数
idPMXサーボモータのID番号
data電流制御のPゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setCurrentLimit()

ushort PMX.PmxBase.setCurrentLimit ( byte id,
ushort maxCur,
ushort limPower,
byte writeOpt = 0 )
inline

指定した ID のモータ消費電流最大値を上回った時の挙動を設定します。

引数
idPMXサーボモータのID番号
maxCurモータ消費電流最大値
limPowerモータ消費電流最大時の出力%値
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
範囲外のデータを受け取った場合statusにエラーが返ってきます
エラー時は実行されません。

◆ setDafaultPidGain()

ushort PMX.PmxBase.setDafaultPidGain ( byte id,
ushort pidAddr,
uint kp,
uint ki,
uint kd,
uint? st = null,
byte writeOpt = 0 )
inline

指定した ID のPIDゲインを変更します。

引数
idPMXサーボモータのID番号
pidAddrPIDゲインのkpが保存されている先頭のアドレス
kpPゲイン
kiIゲイン
kdDゲイン
stストレッチゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setId()

ushort PMX.PmxBase.setId ( byte id,
byte newId )
inline

指定したIDを新しい ID に設定します。

引数
idPMXサーボモータのID番号
newIdPMXサーボモータのWrite新しいID番号
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
シリアル番号がNoneの場合はSystemWRITE関数内で読み込みます。

◆ setLedMode()

ushort PMX.PmxBase.setLedMode ( byte id,
byte ledVal )
inline

指定した ID のLEDモードを設定します。

引数
idPMXサーボモータのID番号
ledValLEDを設定する値。デフォルトは0、消灯は1、点灯は2を入力します。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setLockDetect()

ushort PMX.PmxBase.setLockDetect ( byte id,
ushort time,
ushort power,
ushort outputPower,
byte writeOpt = 0 )
inline

指定した ID のロック時間、ロックと認識される出力割合、およびロック時間の出力%値を設定します。

引数
idPMXサーボモータのID番号
timeロック時間
powerロックと認識される出力割合
outputPowerロック時間の出力%値
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setMaxGoalCurrent()

ushort PMX.PmxBase.setMaxGoalCurrent ( byte id,
short maxGoalCur,
byte writeOpt = 0 )
inline

指定した ID の最大電流指令値を設定します。

引数
idPMXサーボモータのID番号
maxGoalCur最大電流指令値
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
範囲外のデータを受け取った場合statusにエラーが返ってきます
エラー時は実行されません。

◆ setMaxGoalSpeed()

ushort PMX.PmxBase.setMaxGoalSpeed ( byte id,
short maxGoalSpd,
byte writeOpt = 0 )
inline

指定した ID の最大速度指令値を設定します。

引数
idPMXサーボモータのID番号
maxGoalSpd最大速度指令値
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
範囲外のデータを受け取った場合statusにエラーが返ってきます
エラー時は実行されません。

◆ setMaxGoalTorque()

ushort PMX.PmxBase.setMaxGoalTorque ( byte id,
short maxGoalTrq,
byte writeOpt = 0 )
inline

指定した ID の最大動推定トルク指令値を設定します。

引数
idPMXサーボモータのID番号
maxGoalTrq最大動推定トルク指令値
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
範囲外のデータを受け取った場合statusにエラーが返ってきます
エラー時は実行されません。

◆ setMaxVoltageLimit()

ushort PMX.PmxBase.setMaxVoltageLimit ( byte id,
ushort maxVol,
ushort limPower,
byte writeOpt = 0 )
inline

指定した ID の上限電圧を上回った時の挙動を設定します。

引数
idPMXサーボモータのID番号
maxVol入力電圧最大値
limPower入力電圧最大時の出力%値
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
範囲外のデータを受け取った場合statusにエラーが返ってきます
エラー時は実行されません。

◆ setMinVoltageLimit()

ushort PMX.PmxBase.setMinVoltageLimit ( byte id,
ushort minVol,
ushort limPower,
byte writeOpt = 0 )
inline

指定した ID の下限電圧を下回った時の挙動を設定します。

引数
idPMXサーボモータのID番号
minVol入力電圧最小値
limPower入力電圧最小時の出力%値
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
範囲外のデータを受け取った場合statusにエラーが返ってきます
エラー時は実行されません。

◆ setMotorBrake() [1/2]

ushort PMX.PmxBase.setMotorBrake ( byte id)
inline

指定した ID のモータをブレーキにし、ステータス、モータのON/OFF、受信データを取得します。

引数
idPMXサーボモータのID番号
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setMotorBrake() [2/2]

ushort PMX.PmxBase.setMotorBrake ( byte id,
byte receiveMode,
out int[] receiveData,
byte controlMode = 0x01 )
inline

指定した ID のモータをブレーキにし、ステータス、モータのON/OFF、受信データを取得します。

引数
idPMXサーボモータのID番号
receiveModePMXで設定した応答モード
receiveDataMotorReadで読み取ったデータ[位置,速度,電流,トルク,PWM,モータ温度,CPU温度,電圧](合計8項目)
controlModeモータに設定する制御モード(PMX.ControlModeを参照)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setMotorFree() [1/2]

ushort PMX.PmxBase.setMotorFree ( byte id)
inline

指定した ID のモータをフリーにし、ステータス、モータのON/OFF、受信データを取得します。

引数
idPMXサーボモータのID番号
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setMotorFree() [2/2]

ushort PMX.PmxBase.setMotorFree ( byte id,
byte receiveMode,
out int[] receiveData,
byte controlMode = 0x01 )
inline

指定した ID のモータをフリーにし、ステータス、モータのON/OFF、受信データを取得します。

引数
idPMXサーボモータのID番号
receiveModePMXで設定した応答モード
receiveDataMotorReadで読み取ったデータ[位置,速度,電流,トルク,PWM,モータ温度,CPU温度,電圧](合計8項目)
controlModeモータに設定する制御モード(PMX.ControlModeを参照)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setMotorHold() [1/2]

ushort PMX.PmxBase.setMotorHold ( byte id)
inline

指定した ID のモータをホールドにし、ステータス、モータのON/OFF、受信データを取得します。

引数
idPMXサーボモータのID番号
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setMotorHold() [2/2]

ushort PMX.PmxBase.setMotorHold ( byte id,
byte receiveMode,
out int[] receiveData,
byte controlMode = 0x01 )
inline

指定した ID のモータをホールドにし、ステータス、モータのON/OFF、受信データを取得します。

引数
idPMXサーボモータのID番号
receiveModePMXで設定した応答モード
receiveDataMotorReadで読み取ったデータ[位置,速度,電流,トルク,PWM,モータ温度,CPU温度,電圧](合計8項目)
controlModeモータに設定する制御モード(PMX.ControlModeを参照)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setMotorReceive()

ushort PMX.PmxBase.setMotorReceive ( byte id,
byte receiveMode,
byte writeOpt = 0 )
inline

指定したIDのmotorREADやmotorWRITEから返信される応答モードを設定します。

引数
idPMXサーボモータのID番号
receiveMode応答モード(PMX.ReceiveDataOptionを参照)
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setMotorTempLimit()

ushort PMX.PmxBase.setMotorTempLimit ( byte id,
short motorTemp,
ushort limPower,
byte writeOpt = 0 )
inline

指定した ID のモータ温度最大値を上回った時の挙動を設定します。

引数
idPMXサーボモータのID番号
motorTempモータ温度最大値
limPowerモータ温度最大時の出力%値
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
範囲外のデータを受け取った場合statusにエラーが返ってきます
エラー時は実行されません。

◆ setMotorTorqueOn() [1/2]

ushort PMX.PmxBase.setMotorTorqueOn ( byte id)
inline

指定した ID のモータをトルクオンにし、ステータス、モータのON/OFF、受信データを取得します。

引数
idPMXサーボモータのID番号
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setMotorTorqueOn() [2/2]

ushort PMX.PmxBase.setMotorTorqueOn ( byte id,
byte receiveMode,
out int[] receiveData,
byte controlMode = 0x01 )
inline

指定した ID のモータをトルクオンにし、ステータス、モータのON/OFF、受信データを取得します。

引数
idPMXサーボモータのID番号
receiveModePMXで設定した応答モード
receiveDataMotorReadで読み取ったデータ[位置,速度,電流,トルク,PWM,モータ温度,CPU温度,電圧](合計8項目)
controlModeモータに設定する制御モード(PMX.ControlModeを参照)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setParity()

ushort PMX.PmxBase.setParity ( byte id,
byte newParityNum )
inline

指定したIDのパリティを設定します

引数
idPMXサーボモータのID番号
newParityNum通信で使用するパリティの設定(PMX.EditParityを参照)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
シリアル番号がNoneの場合はSystemWRITE関数内で読み込みます。

◆ setPidGains()

ushort PMX.PmxBase.setPidGains ( byte id,
byte presetNum,
byte gainType,
uint kp,
uint ki,
uint kd,
uint? st = null,
byte writeOpt = 0 )
inline

ID、プリセット番号、ゲインタイプを指定し、PIDゲインを変更します。

引数
idPMXサーボモータのID番号
presetNumプリセット番号
gainTypeゲインタイプ(0:位置制御ゲイン,1:速度制御ゲイン,2:電流制御ゲイン,3:トルク制御ゲイン)
kpPゲイン
kiIゲイン
kdDゲイン
stストレッチゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setPosition() [1/2]

ushort PMX.PmxBase.setPosition ( byte id,
short pos )
inline

指定した ID のモータの位置パラメーターを設定し、データをモーター コントローラーに送信します。

引数
idPMXサーボモータのID番号
pos位置パラメータは、モーターの望ましい位置を表す整数です。
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setPosition() [2/2]

ushort PMX.PmxBase.setPosition ( byte id,
short pos,
byte receiveMode,
int[] receiveData )
inline

指定した ID のモータの位置パラメーターを設定し、データをモーター コントローラーに送信します。

引数
idPMXサーボモータのID番号
pos位置パラメータは、モーターの望ましい位置を表す整数です。
receiveMode応答モード。返ってきたデータを変換するときに使用します。
receiveDataMotorReadで読み取ったデータ[位置,速度,電流,トルク,PWM,モータ温度,CPU温度,電圧](合計8項目)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
覚え書き
MotorWRITE関数の返値を直接返します。
警告
controlModeやreceiveModeは事前に設定してください
controlModeで設定した目標値のみを引数に渡してください
複数組み合わせの場合で1つだけ変えるときでも全ての目標値を送ってください
注意
receiveDataでデータがない場合はリストの中身の各データがNoneになります

◆ setPositionGain()

ushort PMX.PmxBase.setPositionGain ( byte id,
uint kpdata,
uint kidata,
uint kddata,
byte writeOpt = 0 )
inline

指定した ID のプリセット1の位置制御のPIDゲインを変更します。

引数
idPMXサーボモータのID番号
kpdata位置制御のPゲイン
kidata位置制御のIゲイン
kddata位置制御のDゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setPositionKdGain()

ushort PMX.PmxBase.setPositionKdGain ( byte id,
uint data,
byte writeOpt = 0 )
inline

指定した ID のプリセット1の位置制御のDゲインを変更します。

引数
idPMXサーボモータのID番号
data位置制御のDゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setPositionKiGain()

ushort PMX.PmxBase.setPositionKiGain ( byte id,
uint data,
byte writeOpt = 0 )
inline

指定した ID のプリセット1の位置制御のIゲインを変更します。

引数
idPMXサーボモータのID番号
data位置制御のIゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setPositionKpGain()

ushort PMX.PmxBase.setPositionKpGain ( byte id,
uint data,
byte writeOpt = 0 )
inline

指定した ID のプリセット1の位置制御のPゲインを変更します。

引数
idPMXサーボモータのID番号
data位置制御のPゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setPositionLimit()

ushort PMX.PmxBase.setPositionLimit ( byte id,
short cwPos,
short ccwPos,
ushort limPower,
byte writeOpt = 0 )
inline

指定した ID の最大角を上回った時の挙動を設定します。

引数
idPMXサーボモータのID番号
cwPosCW方向最大角
ccwPosCCW方向最大角
limPower最大角閾値外時の出力%値
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
範囲外のデータを受け取った場合statusにエラーが返ってきます
エラー時は実行されません。

◆ setPositionStretchGain()

ushort PMX.PmxBase.setPositionStretchGain ( byte id,
uint data,
byte writeOpt = 0 )
inline

指定した ID のプリセット1の位置制御のストレッチゲインを変更します。

引数
idPMXサーボモータのID番号
data位置制御のストレッチゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setResponseTime()

ushort PMX.PmxBase.setResponseTime ( byte id,
byte respTime )
inline

指定したIDの応答時間を設定します

引数
idPMXサーボモータのID番号
respTime応答時間[us]
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
注意
シリアル番号がNoneの場合はSystemWRITE関数内で読み込みます。

◆ setSpeedGain()

ushort PMX.PmxBase.setSpeedGain ( byte id,
uint kpdata,
uint kidata,
uint kddata,
byte writeOpt = 0 )
inline

指定した ID のプリセット1の速度制御のPIDゲインを変更します。

引数
idPMXサーボモータのID番号
kpdata速度制御のPゲイン
kidata速度制御のIゲイン
kddata速度制御のDゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setSpeedKdGain()

ushort PMX.PmxBase.setSpeedKdGain ( byte id,
uint data,
byte writeOpt = 0 )
inline

指定した ID のプリセット1の速度制御のDゲインを変更します。

引数
idPMXサーボモータのID番号
data速度制御のDゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setSpeedKiGain()

ushort PMX.PmxBase.setSpeedKiGain ( byte id,
uint data,
byte writeOpt = 0 )
inline

指定した ID のプリセット1の速度制御のIゲインを変更します。

引数
idPMXサーボモータのID番号
data速度制御のIゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setSpeedKpGain()

ushort PMX.PmxBase.setSpeedKpGain ( byte id,
uint data,
byte writeOpt = 0 )
inline

指定した ID のプリセット1の速度制御のPゲインを変更します。

引数
idPMXサーボモータのID番号
data速度制御のPゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setTorqueGain()

ushort PMX.PmxBase.setTorqueGain ( byte id,
uint kpdata,
uint kidata,
uint kddata,
byte writeOpt = 0 )
inline

指定した ID のプリセット1のトルク制御のPIDゲインを変更します。

引数
idPMXサーボモータのID番号
kpdataトルク制御のPゲイン
kidataトルク制御のIゲイン
kddataトルク制御のDゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setTorqueKdGain()

ushort PMX.PmxBase.setTorqueKdGain ( byte id,
uint data,
byte writeOpt = 0 )
inline

指定した ID のプリセット1のトルク制御のDゲインを変更します。

引数
idPMXサーボモータのID番号
dataトルク制御のDゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setTorqueKiGain()

ushort PMX.PmxBase.setTorqueKiGain ( byte id,
uint data,
byte writeOpt = 0 )
inline

指定した ID のプリセット1のトルク制御のIゲインを変更します。

引数
idPMXサーボモータのID番号
dataトルク制御のIゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setTorqueKpGain()

ushort PMX.PmxBase.setTorqueKpGain ( byte id,
uint data,
byte writeOpt = 0 )
inline

指定した ID のプリセット1のトルク制御のPゲインを変更します。

引数
idPMXサーボモータのID番号
dataトルク制御のPゲイン
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setTorqueSwitch()

ushort PMX.PmxBase.setTorqueSwitch ( byte id,
byte data,
byte writeOpt = 1 )
inline

指定された ID のトルクスイッチを設定します。(TorqueON / Free / Brake / Hold)

引数
idPMXサーボモータのID番号
databyte(符号なし1byte)の書きこみデータ
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
バージョン
1.0.0.0~
注意
この関数は基本TolqueOn時も操作するためwriteOptは1になります
参照
PMX.TorqueSwitchType
覚え書き

◆ setTotalPowerRate()

ushort PMX.PmxBase.setTotalPowerRate ( byte id,
ushort rate,
byte writeOpt = 0 )
inline

指定した ID のモータ出力制限%値を設定します。

引数
idPMXサーボモータのID番号
rateモータ出力制限%値
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ setTrajectory()

ushort PMX.PmxBase.setTrajectory ( byte id,
byte trajecrotyData,
byte writeOpt = 0 )
inline

指定した ID の補間制御軌道生成タイプ指定を設定します。

引数
idPMXサーボモータのID番号
trajecrotyData補間制御軌道生成タイプ指定
writeOptTolqueOn状態でも強制的に書き込むか設定します。0:強制書き込みしない、1:強制書き込みする(デフォルトは0)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ synchronize()

virtual bool PMX.PmxBase.synchronize ( List< byte > txBuf,
out List< byte > rxBuf,
int rxLen )
inlinevirtual

ICS送信の送受信

引数
txBuf送信格納バッファ
rxBuf受信格納バッファ
rxLen受信データ数
戻り値

true 通信成功

false 通信失敗

注意
インターフェイス、子クラスで定義すること
送信データ数、受信データ数はコマンドによって違うので注意する

PMX.PmxSerialClassで再実装されています。

◆ synchronizeVariableRead()

virtual bool PMX.PmxBase.synchronizeVariableRead ( List< byte > txBuf,
out List< byte > rxBuf )
inlinevirtual

synchronizeVariableRead関数は、サブクラスでオーバーライドする必要があるプレースホルダーです。 受信データ数がわからない場合でも送受信したい場合に使用します。

引数
txBuf送信データ
rxBuf受信データ

rxDataはtimeout等でデータがない場合があります。

戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
例外
Exception

PMX.PmxSerialClassで再実装されています。

◆ SystemREAD()

ushort PMX.PmxBase.SystemREAD ( byte id,
out byte[] rxData )
inline

SystemREAD 関数は、サーボからシステム情報を読み取ります。

読み取ることができるデータは下記になります

  • PMX個体固有のシリアル番号
  • PMXの機種番号
  • バージョンの情報
  • コマンドを受け取ってから返信するまでの時間
引数
idPMXサーボモータのID番号
rxDataSystemREADで取得したすべてのデータを返します。[SerialNum, ModelNum, Version, responsTime]
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

◆ SystemWRITE() [1/3]

ushort PMX.PmxBase.SystemWRITE ( byte id,
byte option,
byte newId,
byte newBaudrateVal,
byte newParityVal,
byte newResponseTime )
inline

SystemWRITEコマンドを使用してID、ボーレート、パリティ、および応答時間を設定します。

引数
idPMXサーボモータのID番号
option変更するデータを指定
newIdサーボに割り当てる新しい ID。 0 ~ 239 の整数値である必要があります。
newBaudrateVal新しい通信速度設定値。直接書き込む値なので、EditBaudrateの値を使用します
newParityValパリティを変更します。直接値を書き込むので、EditParityの値を使用します
newResponseTimeコマンドを受け取ってから返信するまでの時間を設定します(us単位で設定します)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)

]

覚え書き
パラメータは個別に書き変えることができます。
パラメータを渡さないもしくはNoneにすると変更されません
注意
SystemWrite使用時にはシリアル番号がNoneの場合は関数内で読み込みます。

◆ SystemWRITE() [2/3]

ushort PMX.PmxBase.SystemWRITE ( byte id,
byte[] serialNum,
byte option,
byte newId,
byte newBaudrateVal,
byte newParityVal,
byte newResponseTime )
inline

SystemWRITEコマンドを使用してID、ボーレート、パリティ、および応答時間を設定します。

引数
idPMXサーボモータのID番号
serialNumサーボの固有番号。SystemReadでデータを返します
option変更するデータを指定
newIdサーボに割り当てる新しい ID。 0 ~ 239 の整数値である必要があります。
newBaudrateVal新しい通信速度設定値。直接書き込む値なので、EditBaudrateの値を使用します
newParityValパリティを変更します。直接値を書き込むので、EditParityの値を使用します
newResponseTimeコマンドを受け取ってから返信するまでの時間を設定します(us単位で設定します)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
覚え書き
パラメータは個別に書き変えることができます。
パラメータを渡さないもしくはNoneにすると変更されません
注意
SystemWrite使用時にはシリアル番号がNoneの場合は関数内で読み込みます。

◆ SystemWRITE() [3/3]

ushort PMX.PmxBase.SystemWRITE ( byte id,
uint serialNum,
byte option,
byte newId,
byte newBaudrateVal,
byte newParityVal,
byte newResponseTime )
inline

SystemWRITEコマンドを使用してID、ボーレート、パリティ、および応答時間を設定します。

引数
idPMXサーボモータのID番号
serialNumサーボの固有番号。SystemReadでデータを返します
option変更するデータを指定
newIdサーボに割り当てる新しい ID。 0 ~ 239 の整数値である必要があります。
newBaudrateVal新しい通信速度設定値。直接書き込む値なので、EditBaudrateの値を使用します
newParityValパリティを変更します。直接値を書き込むので、EditParityの値を使用します
newResponseTimeコマンドを受け取ってから返信するまでの時間を設定します(us単位で設定します)
戻り値
unsigned short 通信の状態とステータス(送信結果(PMX.ComError参照) + PMXのstatus)
覚え書き
パラメータは個別に書き変えることができます。
パラメータを渡さないもしくはNoneにすると変更されません
注意
SystemWrite使用時にはシリアル番号がNoneの場合は関数内で読み込みます。

このクラス詳解は次のファイルから抽出されました: