def SetDiscreteInputs(self, addr, qty, data):
		""""Store the data in a packed binary string to the discrete inputs.
		addr (integer) - Discrete input address.
		qty (integer) - Number of discrete inputs to set.
		data (packed binary string) - Data.
		"""
		self._DiscInputs[addr : addr + qty] = ModbusDataStrLib.bin2boollist(data)[:qty]
	def SetCoils(self, addr, qty, data):
		"""Store the data in a packed binary string to the coils.
		addr (integer) - Coil address.
		qty (integer) - Number of coils to set.
		data (packed binary string) - Data.
		"""
		self._Coils[addr : addr + qty] = ModbusDataStrLib.bin2boollist(data)[:qty]
Ejemplo n.º 3
0
    def SetDiscreteInputs(self, addr, qty, data):
        """"Store the data in a packed binary string to the discrete inputs.
		addr (integer) - Discrete input address.
		qty (integer) - Number of discrete inputs to set.
		data (packed binary string) - Data.
		"""
        self._DiscInputs[addr:addr +
                         qty] = ModbusDataStrLib.bin2boollist(data)[:qty]
Ejemplo n.º 4
0
    def SetCoils(self, addr, qty, data):
        """Store the data in a packed binary string to the coils.
		addr (integer) - Coil address.
		qty (integer) - Number of coils to set.
		data (packed binary string) - Data.
		"""
        self._Coils[addr:addr +
                    qty] = ModbusDataStrLib.bin2boollist(data)[:qty]
	def _SetInputRegistersOverlay(self, addr, qty, data):
		"""Same as SetInputRegisters, except for register overlay option.
		The discrete inputs appear to be packed into input registers 0 to 4095.
		"""
		if (addr > 4095):
			self._SetInputRegisters(addr, qty, data)
		else:
			binstr = ModbusDataStrLib.swapbytes(data)
			self._DiscInputs[addr * 16 : (addr + qty) * 16] = ModbusDataStrLib.bin2boollist(binstr)[:qty * 16]
	def _SetHoldingRegistersOverlay(self, addr, qty, data):
		"""Same as SetHoldingRegisters, except for register overlay option.
		The coils appear to be packed into holding registers 0 to 4095.
		"""
		if (addr > 4095):
			self._SetHoldingRegisters(addr, qty, data)
		else:
			binstr = ModbusDataStrLib.swapbytes(data)
			self._Coils[addr * 16 : (addr + qty) * 16] = ModbusDataStrLib.bin2boollist(binstr)[:qty * 16]
Ejemplo n.º 7
0
    def _SetHoldingRegistersOverlay(self, addr, qty, data):
        """Same as SetHoldingRegisters, except for register overlay option.
		The coils appear to be packed into holding registers 0 to 4095.
		"""
        if (addr > 4095):
            self._SetHoldingRegisters(addr, qty, data)
        else:
            binstr = ModbusDataStrLib.swapbytes(data)
            self._Coils[addr * 16:(addr + qty) *
                        16] = ModbusDataStrLib.bin2boollist(binstr)[:qty * 16]
Ejemplo n.º 8
0
    def _SetInputRegistersOverlay(self, addr, qty, data):
        """Same as SetInputRegisters, except for register overlay option.
		The discrete inputs appear to be packed into input registers 0 to 4095.
		"""
        if (addr > 4095):
            self._SetInputRegisters(addr, qty, data)
        else:
            binstr = ModbusDataStrLib.swapbytes(data)
            self._DiscInputs[addr * 16:(addr + qty) *
                             16] = ModbusDataStrLib.bin2boollist(binstr)[:qty *
                                                                         16]