Bei I2C ist die Weiterleitung nicht optimal, es müsste jeder uC Master und Slave zugleich sein. I2C ist dafür eigentlich nicht ausgelegt (obwohl Multimaster möglich wäre).
Besser wäre ein Singlemastersystem aufzubauen. Einen uC/Ltg und einen Mastercontroller. Dann kann man auch I2C verwenden.
Eine weitere Möglichkeit wäre einen Portexpander zu verwenden und den Int auszuwerten.
Also 1 Master, 1 Slave/Ltg, 1 PCF8574/ 8 Slave. Erkennt ein Slave eine Störung meldet er diese per Interrupt an den PCF, dadurch meldet sich dieser wiederum beim Master. Der Master liest die PCF aus und weiß wo der Fehler ist, bei Bedarf kannst du dann den jeweiligen Slave noch extra auslesen/zurücksetzten. Ansonsten müsstest du alle Slaves auslesen.
Sensor würde ich entweder einen kapazitiven nehmen oder per Licht messen. Eine starke Lichtquelle leuchtet durch das Rohr (muss dann natürlich transparent sein) und auf der anderen Seite einen LDR oder sonstigen Lichtsensor.
MfG Hannes
Lesezeichen