What immediately stands out about your opto circuits is that you are violating the first rule of using optio ISOLATIORS :
RULE-1: NEVER CONNECT YOUR INPUT GND TO YOUR OUTPUT GND ! (it completely eliminates the isolation)I would first try using an option that keeps your arduino circuit GND ISOLATED from your CHASSIS GND.If , for example you used something like
this, to power the arduino from the output side using the 12V car bat for the input side, then a continuity check from arduino GND to chassis GND should read OPEN. (obviously a battery
powered arduino circuit would meet the isolation requirements but the inconvenience would probably rule out
that option).
You could probably do much better looking through this Google search:
Google Search : "12V dc isolator circuit
"
https://www.google.com/search?q=12v+DC+ISOLATION+CIRCUIT&rlz=1C1CHBF_enUS848US848&oq=12v+DC+ISOLATION+CIRCUIT&aqs=chrome..69i57.11190j0j15&sourceid=chrome&ie=UTF-8"
On a completely different note , there is much to be said for using a
toroid CT (Current (sense) Transformer) because it is much more immune to automotive noise.
Above is one example but obviously, if you take the time to browse through
this google search you may find a better choice.
In all honesty, it is possible the debate over "opto-isolators vs CT" could go on for sometime as there are many
supporters of both schools. I have used both and found a CT to be very easy to interface. If this were an engineering design review, the senior engineer would probably assign one engineer to try one approach and another to try the other approach and then have a "circuit shootout" between the two based on cost, labor ,
performance, and parts availability.
"Choose wisely, Grasshopper...."