I have an application using Portenta H7 Lite to trigger a dual channels 5V relay to drive two 24V solenoids. Triggering is by sending 2 digital signals (Pin 1 and 2) to the relay. These solenoids act as locks and are not powered constantly except when the lock/unlock action is needed. They receive constant powered at most for 7s in case of getting stuck before giving up.
The Arduino also reads feedback from the solenoids with analog pins (A3, A4, A5, A6). The solenoids providing 5V analog signal as feedback, and Portenta H7 analog pins are rated with 3.1V only. The entire circuit worked mostly. But I started to see the Portenta went into some panic mode (flashing onboard RGB LED) and gave up operation entirely during operations of the solenoids. Physically hit the reset button on Arduino brings it back to operation.
It was found that the solenoids sending 3.4V spike analog feedback sometimes. I'm not sure that is the reason causing Arduino distress. But the first fix attempt was to add voltage divider to bring down the voltage. The issue seems to present less, but it is still there. Dividing voltage more did not seem to help either. So I'm not sure where else to look.
I'm not electrical engineer, and I am definitely missing something here.
Appreciate your thought in any potential issue that I can look further into for this problem.
Hello. You think the relay could cause issue? I just added the some sketch for more details. The reason we use dual relay is because of the need to switch voltage polarities to extend/retract the linear actuator.
Could you spend a few minutes to draw a meaningful schematic that doesn’t crossover itself.
I’m honestly getting too old to read that pseudo Fritzing diagram.
What kind of analog signal ? There is only open or closed right ? So in that case i would use opto-couplers to separate them and assure that there are no voltage spikes. Particularly on a device with that sort of price (ouch !)
Also i would add these to the relay module, which is 5v. The 3.3v signal from the portenta should be enough to drive the transistor (it does) but some more isolation may be better. There should be fly-back diodes on that unit, but can you confirm there are ?
Is that on account of so little time left, your eyesight or your patience with noobs?
Ticking all three boxes myself, and if I was being honest, I didn't like that kind of schematic ever. That I can remember.
+1 @timbits post the make and model of the things in there.
I confess I dared to look and see what the green pair of wires and the black pair of wires were hooked to on the microprocessor, that won't make sense without learning more than I want about that board.
Maybe for now a hand drawn schematic, just a step or two up from a block diagram, would shut everyone up for a while give us something we can work with.
I'll look at your, no make that I'll ask you to post the code you are using to test this hardware and circuit.
Please post the code you are using to test this hardware and circuit.
It took a few days. But Arduino Tech Support provided me with some good feedback. Below is their answer. We add a couple capacitors after the voltage dividers to filter out high and low frequency noise from solenoid analog feedback. The circuit definitely performs much better, couldn't totally get rid of the problem but it takes a lot more of solenoid activation for the problem to occur.
in this application it's important to have some buffering between the Portenta H7 pins and the relay. Relays could cause over/under voltage spikes on pins when their current is changed and this could break the processor.
The solenoid output being sent through partition networks could be dangerous too because depending on the circuit there may be some over/under voltage that may damage the chip.