484 875 läst · 1 879 svar
485k läst
1,9k svar
Elmätare, H1-port / P1-port / HAN-port (många namn verkar florera)
Läste manualen för han-modulen och där står faktiskt ”Den externa enheten / skärmen är ansluten via en RJ12-kontakt och behöver en extern strömförsörjning och splitter som visas på ritningen nästa sida.”K Krolken skrev:
Kan det vara så att han modulen inte matas från elmätaren utan behöver extern matning? Har testat att koppla in min esp8266 när den matats via usb men tror inte den ger spänning ut från esp:n då det sitter dioder på den. Kanske ska testa att koppla 5v parallellt på 1 och 6 på Rj12-pluggen för att mata både han-modulen och esp:n
OK. 5 v från elmätaren är nog bara den allmänna till elektroniken. Få du inte ut 5 V på RJ12 och det ska komma 5V enligt elbolaget är ju hanporten inte aktiverad eller modulen defekt.E EPettson skrev:Till Kamstrups mätare köper man en modul som man trycker in i ett fack i elmätaren. Kontaktstiften i elmätaren är synliga och går att mäta på med multimeter. Där finns det spänning, men inte ut från P1-moulen med RJ12-kontakt.
Databladet till 6840005 specificerar att det ska finnas 5v på pin 1, visserligen ger den bara 75 mAh men ändå.
På vissa mätare visas en symbol i displayen om hanporten är aktiverad. Osäker på hur det är med kamstrup.
Hej
Jag har. en Landis&Gyr E360 och har kopplat ihop RJ12 kontakten med en usb serial port omvandlare och kopplat ihop pinnarna enligt instruktionen på hanporten.se men jag får inte ut någon data bara skräp ? Vet någon om buggen är fixad?
Eon har aktiverat porten.
Tacksam för svar.
Jag har. en Landis&Gyr E360 och har kopplat ihop RJ12 kontakten med en usb serial port omvandlare och kopplat ihop pinnarna enligt instruktionen på hanporten.se men jag får inte ut någon data bara skräp ? Vet någon om buggen är fixad?
Eon har aktiverat porten.
Tacksam för svar.
Fungerar fint här sen i våras med svanströms men ska få en ny mätare efter nedsäkringP pethun skrev:
Om du får ut skräp brukar det vara på grund av fel baudrate. Det kommer data men tolkas inte rätt.P pethun skrev:
Har du med kretsen som inverterar signalen? Kör man omvandlare direkt på kontakten så är alla bitar inverterad och då blir det också fel.
Tack för svarK Krolken skrev:
Jag läser ut
b''
b''
b''
osv och varje rad kommer ca med 25 sec mellanrum. kör 9600 baud och har 5V kontinuerligt på pinne 2 på RJ12 kontakten.
Tycker det borde fungera med en usb seriell omvandlare til rs232?
jag kör en usb seriell omvandlare direkt in på porten?
OK. Det kommer ingen data som det ser ut som. Har du något program som läser på porten? Känns mer dom en timeout i readline() än data från porten som ska komma var 10e sekundP pethun skrev:
Jag har bara gjort ett simpelt python script som läser datan från porten för att testa:K Krolken skrev:
"
import serial
serial_port = serial.Serial(
"/dev/ttyUSB0",
baudrate=115200,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
bytesize=serial.EIGHTBITS,
timeout=30,
rtscts=False,
dsrdtr=False,
xonxoff=False
)
# serial_port.open()
while True:
elec_data=serial_port.readline()
print(elec_data)
# do something
serial_port.close()
"
Någonting kommer men det jag läser är
som sagt tecknen:
b''
b''
b''
Kanske skall läsa exact i hex vilka tecken som kommer eller dubbelkolla kontakte men jag tycker att det borde inte komma någonting alls om jag kopplat fel?
Har du byglat pinne 2 till 5V?
Data ut är öppen kollektor, vilket betyder att du behöver ett pull up motstånd till rätt spänning. Och jag tror att du även behöver invertera signaler elektriskt, om du inte kan ställa om det i din USB omvandlare.
https://hanporten.se/svenska/porten/
Data ut är öppen kollektor, vilket betyder att du behöver ett pull up motstånd till rätt spänning. Och jag tror att du även behöver invertera signaler elektriskt, om du inte kan ställa om det i din USB omvandlare.
https://hanporten.se/svenska/porten/
OK och tack för all input alla. Jag har byglat pinne 2 till 5 volt direkt genom att lägga ihop pinne 1 med pinne 2 på rj12 porten. Jag menar att det är vanlig rs232 signaler som kommer ut och att de spänningsdelningar jag sett tidigare i forumet är för att anpassa så att det går att läsa på pinnarna på en raspberry pi eller Arduino 3.3 V input.B byggsorken skrev:
Men jag kan ha fel och att signalerna inte är direkt kompatibla med rs232?
Då borde det fungera som du kopplat. Men som du själv var inne på, testa skriva ut datat du tar emot som hex eller dec istället för sträng.P pethun skrev:OK och tack för all input alla. Jag har byglat pinne 2 till 5 volt direkt genom att lägga ihop pinne 1 med pinne 2 på rj12 porten. Jag menar att det är vanlig rs232 signaler som kommer ut och att de spänningsdelningar jag sett tidigare i forumet är för att anpassa så att det går att läsa på pinnarna på en raspberry pi eller Arduino 3.3 V input.
Men jag kan ha fel och att signalerna inte är direkt kompatibla med rs232?
Du tar inte emot någon data.P pethun skrev:Jag har bara gjort ett simpelt python script som läser datan från porten för att testa:
"
import serial
serial_port = serial.Serial(
"/dev/ttyUSB0",
baudrate=115200,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
bytesize=serial.EIGHTBITS,
timeout=30,
rtscts=False,
dsrdtr=False,
xonxoff=False
)
# serial_port.open()
while True:
elec_data=serial_port.readline()
print(elec_data)
# do something
serial_port.close()
"
Någonting kommer men det jag läser är
som sagt tecknen:
b''
b''
b''
Kanske skall läsa exact i hex vilka tecken som kommer eller dubbelkolla kontakte men jag tycker att det borde inte komma någonting alls om jag kopplat fel?
Det blir timeout på readline och och den returnerar en tom byte-sträng som skrivs ut.
Kan du ladda up en liten skiss vore det bra. Är det en Mac eller Linux dator?
Många rs232 omvandlare klarar inte så hög baudrate.
Hej KrolkenK Krolken skrev:
Jag använder en Raspberry PI compute model 4 med ett kort från seed. https://wiki.seeedstudio.com/Dual-G...rry-Pi-CM4/#getting-started-hardware-required
Jag kom på att det kan vara ett problem med USB portarna på kortet som tydligen är disablade by default för att spara strömförbrukning. Jag skall kolla upp detta men det kan vara en del i problemet. Jag återkommer med skiss och uppdatering i ämnet. Prylarna är på landet så det kommer att ta några dagar.
Nice kretskort.P pethun skrev:Hej Krolken
Jag använder en Raspberry PI compute model 4 med ett kort från seed. [länk]
Jag kom på att det kan vara ett problem med USB portarna på kortet som tydligen är disablade by default för att spara strömförbrukning. Jag skall kolla upp detta men det kan vara en del i problemet. Jag återkommer med skiss och uppdatering i ämnet. Prylarna är på landet så det kommer att ta några dagar.
Det skulle också kunna vara så att du öppnar fel port i programmet. Finns där mer än ttyUSB0 i början på listan när du kör
"ls /dev/tty*"
Sen har du rätt i att det verkar som om usb-uttagen inte är aktiverade:
"
By default, the 2 USB 3.0 Ports are disabled to save power on the CM4 are therefore they are not readily accessible. However the USB 3.0 9-Pin Header is accessible out of the box.
"
Så /dev/ttyUSB0 borde ju vara pin-header porten om den alltid är akriverad.
Kanske USB porten fungerar ändå som USB2. Dmesg ger mig:K Krolken skrev:Nice kretskort.
Det skulle också kunna vara så att du öppnar fel port i programmet. Finns där mer än ttyUSB0 i början på listan när du kör
"ls /dev/tty*"
Sen har du rätt i att det verkar som om usb-uttagen inte är aktiverade:
"
By default, the 2 USB 3.0 Ports are disabled to save power on the CM4 are therefore they are not readily accessible. However the USB 3.0 9-Pin Header is accessible out of the box.
"
Så /dev/ttyUSB0 borde ju vara pin-header porten om den alltid är akriverad.
dmesg | grep tty
[ 0.000000] Kernel command line: coherent_pool=1M 8250.nr_uarts=0 snd_bcm2835.enable_compat_alsa=0 snd_bcm2835.enable_hdmi=1 smsc95xx.macaddr=DC:A6:32:FE:A4:7E vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000 console=ttyS0,115200 console=tty1 root=PARTUUID=da6c451b-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait initcall_blacklist=lan78xx_driver_init
[ 0.001815] printk: console [tty1] enabled
[ 1.437206] fe201000.serial: ttyAMA0 at MMIO 0xfe201000 (irq = 36, base_baud = 0) is a PL011 rev2
[ 5.182552] usb 1-1.1: pl2303 converter now attached to ttyUSB0
där PL232 converter är min usb serial rs232 omvandlare. Men det kan vara något så trivialt att jag kopplat pinne 5 transmit data i rj12 kontakten till fel pinne på konvertern. Har en 9 polig nollmodem kabel och jag satte transmit data i port 2 på sladden och jag testade aldrig port 3 vilket borde vara första åtgärden istället för att be om hjälp i forumet.
Du har rätt i att
b''
b''
är timeout och det inte kommer någon data för jag körde skriptet utan anslutning och det ger samma resultat.
kollar att flytta sladden till port 3 vilket nog är den rätta. Återkommer med ritning och resultat.
Tack