public void SetOperationMode(string hostIp, int port, [FromBody] sbyte operationMode) { Socket s = ModbusSocket.GetConnection(hostIp, port); ModesOfOperation modesOfOperation = new ModesOfOperation(); modesOfOperation.Write(s, (ModesOfOperation.ModesEnum)operationMode); }
public bool Homing(string hostIp, int port) { Socket s = ModbusSocket.GetConnection(hostIp, port); ModesOfOperation modesOfOperation = new ModesOfOperation(); modesOfOperation.Write(s, ModesOfOperation.ModesEnum.Homing); while (modesOfOperation.ReadDisplay(s) != ModesOfOperation.ModesEnum.Homing) { Thread.Sleep(100); } ControlWord controlWord = new ControlWord(); // Byte 19: 31 controlWord.Bit00 = true; // 1 controlWord.Bit01 = true; // 2 controlWord.Bit02 = true; // 4 controlWord.Bit03 = true; // 8 controlWord.Bit04 = true; // 16 controlWord.Write(s); StatusWord statusWord = new StatusWord(); while (!(statusWord.Bit00 && statusWord.Bit01 && statusWord.Bit02 && statusWord.Bit05 && // 39 statusWord.Bit09 && statusWord.Bit10 && statusWord.Bit12)) // 22 { statusWord.Read(s); Thread.Sleep(100); } return(true); }
public sbyte GetOperationModeDisplay(string hostIp, int port) { Socket s = ModbusSocket.GetConnection(hostIp, port); ModesOfOperation modesOfOperation = new ModesOfOperation(); var currentMode = modesOfOperation.ReadDisplay(s); return((sbyte)currentMode); }
public ControlWord GetControlWord(string hostIp, int port) { Socket s = ModbusSocket.GetConnection(hostIp, port); ControlWord controlWord = new ControlWord(); controlWord.Read(s); return(controlWord); }
public StatusWord GetStatusWord(string hostIp, int port) { Socket s = ModbusSocket.GetConnection(hostIp, port); StatusWord statusWord = new StatusWord(); statusWord.Read(s); return(statusWord); }
public bool Init(string hostIp, int port) { Socket s = ModbusSocket.GetConnection(hostIp, port); ShutDown(s); SwitchOn(s); EnableOperation(s); return(true); }
public void SetShaftRevolutions(string hostIp, int port, [FromBody] uint shaftRevolutions) { Socket s = ModbusSocket.GetConnection(hostIp, port); byte[] data = BitConverter.GetBytes(shaftRevolutions); var telegram = new Telegram(); telegram.Length = 23; telegram.Set(1, AddressConst.ShaftRevolution, 4, data[0], data[1], data[2], data[3]); var response = telegram.SendAndReceive(s); }
public uint GetShaftRevolutions(string hostIp, int port) { Socket s = ModbusSocket.GetConnection(hostIp, port); var telegram = new Telegram(); telegram.Set(0, AddressConst.ShaftRevolution, 4); var response = telegram.SendAndReceive(s); var result = BitConverter.ToUInt32(new byte[] { response.Byte19, response.Byte20, response.Byte21, response.Byte22 }, 0); return(result); }
public void SetMethod(string hostIp, int port, [FromBody] sbyte homingMethod) { Socket s = ModbusSocket.GetConnection(hostIp, port); byte[] data = BitConverter.GetBytes(homingMethod); var telegram = new Telegram(); telegram.Length = 20; telegram.Set(1, AddressConst.HomingMethod, 4, 0, data[0]); var response = telegram.SendAndReceive(s); }
public sbyte GetMethod(string hostIp, int port) { Socket s = ModbusSocket.GetConnection(hostIp, port); var telegram = new Telegram(); telegram.Set(0, AddressConst.HomingMethod, 4); var response = telegram.SendAndReceive(s); var result = (sbyte)response.Byte19; return(result); }
public void SetZeroSearchVelocity(string hostIp, int port, [FromBody] uint zeroSearchVelocity) { Socket s = ModbusSocket.GetConnection(hostIp, port); byte[] data = BitConverter.GetBytes(zeroSearchVelocity); var telegram = new Telegram(); telegram.Length = 23; telegram.Set(1, AddressConst.HomingZeroSearchVelocity, 4, data[0], data[1], data[2], data[3]); var response = telegram.SendAndReceive(s); }
public int GetActualPosition(string hostIp, int port) { Socket s = ModbusSocket.GetConnection(hostIp, port); var telegram = new Telegram(); telegram.Set(0, AddressConst.PositionActualValue, 4); var response = telegram.SendAndReceive(s); var result = BitConverter.ToInt32(new byte[] { response.Byte19, response.Byte20, response.Byte21, response.Byte22 }, 0); return(result); }
public void SetTargetPosition(string hostIp, int port, [FromBody] int targetPosition) { Socket s = ModbusSocket.GetConnection(hostIp, port); byte[] data = BitConverter.GetBytes(targetPosition); var telegram = new Telegram(); telegram.Length = 23; telegram.Set(1, AddressConst.TargetPosition, 4, data[0], data[1], data[2], data[3]); var response = telegram.SendAndReceive(s); }
public ushort GetPositionWindowTime(string hostIp, int port) { Socket s = ModbusSocket.GetConnection(hostIp, port); var telegram = new Telegram(); telegram.Set(0, AddressConst.PositionWindowTime, 2); var response = telegram.SendAndReceive(s); var result = BitConverter.ToUInt16(new byte[] { response.Byte19, response.Byte20 }, 0); return(result); }
public void SetControlWord(string hostIp, int port, [FromBody] ControlWord controlWord) { Socket s = ModbusSocket.GetConnection(hostIp, port); controlWord.Write(s); }