![]() |
Re: Photoeye's not working-Difference between RoboRIO and Digital Side Card?
Quote:
Quote:
Having 5V ---- 1K ----- rio dig in / sensor output -----40K -----3.3V seemed harmless to me when I was testing. That's 41K between the two supplies regardless of sensor output. When sensor low-side drives, it sinks 5mA from 5V rail and 82.5uA from 3.3. My VRM can handle 5mA and the RIO's internal can handle 82uA. Sensor can handle sinking 5.0825 mA. |
Re: Photoeye's not working-Difference between RoboRIO and Digital Side Card?
From (alpha/beta) testing, 5V will not damage the 3.3v rail. From what I recall, all pins were tested against a lead acid battery.
|
Re: Photoeye's not working-Difference between RoboRIO and Digital Side Card?
Thanks guys, learning some more, so now looking the roboRIO diagram some more, is it wrong to just tie a 10kOhm-1KOhm resistor between the 3.3v of the DIO to the white of the DIO?
Isn't that the same solution and keeps the "custom circuit" on the end of the sensor pwm. Then the next question is this a "legal" custom circuit, with regards to the rules. |
Re: Photoeye's not working-Difference between RoboRIO and Digital Side Card?
If that sensor has a max off current of 200uA (well <200uA but to be conservative) like the datasheet suggests then 10K X 0.2mA => a drop of 2V across the pullup. That means 3.3V - 2V = 1.3V at the input, that's not high enough (RIO needs at least 2V).
So I guess the biggest pullup would be 1.3V-drop @ 0.2mA => 6.5Kohm. So anything less then 6.5Kohm should be good enough. And if not measure the voltage at the signal side of the pullup and see what's up. Technically the 40K is still in-circuit so really the pullup would be (6.5K || 40K), so 6.5K is probably a good conservative threshold. |
Re: Photoeye's not working-Difference between RoboRIO and Digital Side Card?
Quote:
I understand that connecting them together in this manner may not have caused a problem, yet. I doubt it would IF everything is built and valued correctly either. That said, why risk it? Additionally, bridging them together with resistors will eat a small amount of available current from the +5vcd supply that would otherwise be available for other circuits. Granted this value is very small, but it is wasted none the less. Adding a 1K-10K pull-up between the DIO pin(s) and +3.3vdc is just as easy as adding it to the +5vdc supply. So, why not just connect it to the +3.3vdc? BTW, Thank you to everyone who has caught this and contributed to finding a solution this early! New control systems will always have their quarks and nuances. Finding them and figuring out how to deal with them is vital to making them a success! |
Re: Photoeye's not working-Difference between RoboRIO and Digital Side Card?
Quote:
|
Re: Photoeye's not working-Difference between RoboRIO and Digital Side Card?
Quote:
It is as simple as soldering the resistor to the correct supply rail. +5vdc or +3.3vdc, it's your call. |
Re: Photoeye's not working-Difference between RoboRIO and Digital Side Card?
Quote:
R8 and R30 say CUSTOM CIRCUIT voltages can't exceed 24 volts. That won't happen with that setup. R30 says any electrical item that isn't a motor/actuator or a control system part is a CUSTOM CIRCUIT. Photoswitches and resistors aren't motors are control system components, so we have a CUSTOM CIRCUIT. R37 covers CUSTOM CIRCUITS that connect directly to the PDP. That doesn't apply here because the circuit isn't connected to the PDP. R42 covers CUSTOM CIRCUITS that are controlled by speed controllers or relays. Again, that doesn't apply here. R44 says CUSTOM CIRCUITS can't alter power pathways of control system components. The photoswitch/resistor combination does not connect to or alter any pathways. R48 covers Ethernet CUSTOM CIRCUITS. That doesn't apply here. R62 allows CUSTOM CIRCUITS to be connected to the CAN bus. That doesn't apply here. Looks legal to me. |
Re: Photoeye's not working-Difference between RoboRIO and Digital Side Card?
Hi Guys,
I spent a little time looking into this. Omar is correct; the leakage current is the issue with the QS30 Banner sensor. Let me elaborate a bit... This sensor uses an open collector output. Of the many things you need to be concerned with, the two biggest are leakage current (Ileak) and saturation voltage (Vce_sat). Both of these are specified in the datasheet, but sadly, only at the inconvenient operating point of 100mA: http://info.bannerengineering.com/cs...ure/119167.pdf NPN Ileak: <200uA NPN Vce_sat: <1.6V @ 100mA PNP Ileak: <10uA PNP Vce_sat: <2V @100mA There is a conflicting trade-off to be made in the selection of the pull-up resistor. Remember that the Vce_sat of a BJT is dependent upon many things including the collector current. You would like the Vce_sat to be very low since, to guarantee proper operation, it needs to be less than the low logic threshold of 0.8V for the roboRIO. The higher the value of the pull-up resistor (a weaker pull-up) the less collector current you will have and the Vce_sat will go down. The trade-off is the leakage current. For this NPN BJT, the Ileak is specified to be lower than a massive 200uA. Omar measured this at 65uA for his particular part and operating temperature which is still very high. Through a large pull-up resistor this Ileak creates an offset voltage that makes the roboRIO read a logic low even when the BJT is off and the output should be reading high. You need to make these trade-offs for any open collector sensor output. The reason it's difficult to work out in this case is that this sensor is meant for a high voltage (12V - 24V) industrial installation (like a factory floor) and not necessarily for interfacing to a low-voltage, high-speed FPGA (roboRIO). That doesn't mean it can't work. It's just going to be harder than if the sensor and controller are well matched. Since the datasheet for the Banner sensor doesn't specify the Vce_sat at lower collector currents than 100mA, the best value for the pull-up resistor will need to be done through experimentation as many of you have been doing. I don't have one to play with myself. A few recommendations: I think adding a parallel pull-up to 3.3V is better than pulling up to the 5V rail. Please keep in mind that the circuitry inside the roboRIO is a lot more complicated than the picture with the FPGA and pull-up resistor. That's the functional view only and there are many more components for protection of the DIOs. I'm not trying to scare anyone out of being creative, but keeping the circuit simple and strait forward is best so nobody inadvertently disables a protection mechanism. The PNP BJT is specified with a slightly higher Vce_sat, but a far lower leakage current. It might be interesting to see if you could invert the logic and wire for the PNP output. I believe some of the DIO have pull-downs which might be suitable for this inverted situation. When you find a working circuit, use a DMM to measure the high and low levels at the DIO pin of the roboRIO. You want to make sure you are well under the logic low threshold and well above logic high to get consistent, reliable use. Remember that leakage currents are tricky and change from device to device and over different temperatures. Tim |
Re: Photoeye's not working-Difference between RoboRIO and Digital Side Card?
FWIW,
Yesterday we were able to test our DS18 sensors with a 4.7KOhm external pull up to the +5v DIO rail, and it worked. After the meeting I saw the post above, and now we will work on getting the pull up to the +3.3v rail of the roboRIO. I have two Rev robotics passive boards on order, so we will probably use the +3.3v screw terminal of the board for power supply and a small terminal strip for the resistors. |
Re: Photoeye's not working-Difference between RoboRIO and Digital Side Card?
I tried two Banner QS18VN6D sensors, one we've had for several years and one we just bought this month. I powered them directly from battery voltage and connected the DARK and LIGHT output wires to individual Digital Input signal pins. Both of them worked perfectly without any extra pullup resistors.
I am still slightly paranoid about them, since so many other people have reported problems, but for now they're going to be wired exactly the way we've always done them in the past. |
Re: Photoeye's not working-Difference between RoboRIO and Digital Side Card?
1 Attachment(s)
Alan,
You should be fine with the QS18 sensor. From what I can tell the issue is identified in the V-Sat spec. The sensors that have not worked, have a spec from banner of the V-Sat of " <1.6v" This is the DS18 and QS30 family. The sensors that have worked, have a V-Sat rating of "<1v" This is the T18, T30, and now your QS30 families. |
Re: Photoeye's not working-Difference between RoboRIO and Digital Side Card?
Thanks for this thread guys. I was going to use some QMRN-0N-0A sensors from Automation Direct. They will be powered by 12V and of course, I want to measure the input with a DIO pin. They are visible red, with an NPN. I was worried about ground isolation between the PDP, VRM, and RoboRio DIO pins, but according to the posts, that should not be an issue.
I hooked one up on a test bench, not yet to the robot control system. The issue that I am having though is that the output pin of the senor only gets pulled down to 1.3 volts, which is not enough to reliably measure a low digital input. I tried with both a 40K input to simulate what the roboRio has and also a 4.7 K to give it more current. I am pulling it up to 5V, not 3.3. Any thoughts as to how to make this senor work? What about connecting them to analog inputs and check for below 2.5 volts? Should I power directly off the PDP, or the VRM? |
Re: Photoeye's not working-Difference between RoboRIO and Digital Side Card?
Quote:
More than likely there is an internal current limiting resistor in sensor that is also preventing the output from dropping below 1vdc. |
Re: Photoeye's not working-Difference between RoboRIO and Digital Side Card?
Quote:
|
| All times are GMT -5. The time now is 09:41. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi