def main(): """main""" #create the object for getting CPU data data_collector = SystemDataCollector(5) #create the thread in charge of calling the data collector system_monitor = WorkerThread(data_collector.collect) #create the modbus TCP simulator and one slave #and one block of analog inputs simu = Simulator(TcpServer()) slave = simu.server.add_slave(1) slave.add_block("Cpu", defines.ANALOG_INPUTS, 0, 10) try: LOGGER.info("'quit' for closing the server") #start the data collect system_monitor.start() #start the simulator! will block until quit command is received simu.start() except Exception as excpt: print excpt finally: #close the simulator simu.close() #stop the data collect system_monitor.stop()
slave.add_block("switch", modbus_tk.defines.COILS, 100, 10) switch_block = slave._get_block("switch") print "switch block" print switch_block install_hook('modbus.ModbusBlock.setitem', setblock_hook) # modbus.Slave.handle_read_coils_request # modbus.Slave.handle_read_discrete_inputs_request # modbus.Slave.handle_read_holding_registers_request # modbus.Slave.handle_read_input_registers_request try: LOGGER.info("'quit' for closing the server") #start the data collect system_monitor.start() #start the simulator! will block until quit command is received simu.start() except Exception, excpt: print excpt finally: #close the simulator simu.close() #stop the data collect system_monitor.stop()
if __name__ == "__main__": #create the object for getting CPU data data_collector = SystemDataCollector(5) #create the thread in charge of calling the data collector system_monitor = WorkerThread(data_collector.collect) #create the modbus TCP simulator and one slave #and one block of analog inputs simu = Simulator(TcpServer()) slave = simu.server.add_slave(1) slave.add_block("Cpu", ANALOG_INPUTS, 0, 10) try: LOGGER.info("'quit' for closing the server") #start the data collect system_monitor.start() #start the simulator! will block until quit command is received simu.start() except Exception, excpt: print excpt finally: #close the simulator simu.close() #stop the data collect system_monitor.stop()