i want to create a weewx service

[image: 121.png]


i created a tester all ok
crawl i weewx don't get what i do
  what i do badly







2019 m. kovas 19 d., antradienis 16:10:50 UTC+2, rimas petronis rašė:
>
> good day
>
> sorry my weak english translated with google
> i really liked the program not only watching the weather but watching 
> other devices i would like to connect to weewx data in another database
>
> database and other composition
>
> [image: image.png]
>
>
> can be connected
>

-- 
You received this message because you are subscribed to the Google Groups 
"weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.
import weewx
from weewx.engine import StdService
from pymodbus.constants import Endian
from pymodbus.payload import BinaryPayloadDecoder
from pymodbus.client.sync import ModbusTcpClient

class AddElectricity(StdService):

    def __init__(self, engine, config_dict):

      # Initialize my superclass first:
      super(AddElectricity, self).__init__(engine, config_dict)

      # Bind to any new archive record events:
      self.bind(weewx.NEW_ARCHIVE_RECORD, self.new_archive_record)


    def new_archive_record(self, event):

client = ModbusTcpClient('192.168.1.199', port=502)
client.connect()


Ir12 = client.read_input_registers(7713, 1, unit=10)
Ir16 = client.read_input_registers(7705, 1, unit=10)


decoder12 = BinaryPayloadDecoder.fromRegisters(Ir12.registers, byteorder=Endian.Big, wordorder=Endian.Big)
decoder16 = BinaryPayloadDecoder.fromRegisters(Ir16.registers, byteorder=Endian.Big, wordorder=Endian.Big)

dekode12 = (decoder12.decode_16bit_int())
dekode16 = (decoder16.decode_16bit_int())

          event.record['battery_voltage'] = dekode12
          event.record['battery_sense_voltage'] = dekode16

client.close()
from pymodbus.constants import Endian
from pymodbus.payload import BinaryPayloadDecoder
from pymodbus.client.sync import ModbusTcpClient

client = ModbusTcpClient('192.168.1.199', port=502)
client.connect()


Ir12 = client.read_input_registers(7713, 1, unit=10)
Ir16 = client.read_input_registers(7705, 1, unit=10)


decoder12 = BinaryPayloadDecoder.fromRegisters(Ir12.registers, byteorder=Endian.Big, wordorder=Endian.Big)
decoder16 = BinaryPayloadDecoder.fromRegisters(Ir16.registers, byteorder=Endian.Big, wordorder=Endian.Big)

dekode12 = (decoder12.decode_16bit_int())
dekode16 = (decoder16.decode_16bit_int()) / 100.00

print dekode12
print dekode16

client.close()

Reply via email to