Recording quadrature encoder and AI signals simultaneo​usly and generating output TTL signals in one VI

I want to record simultaneously encoder, pressure and other AI signals and output a TTL signal for every other pressure signal. I have two VIs: One is to record all signals and the other is to generate TTL signals.
1. Since I'm new to Labview, I would like to double check with experts that if my VI (attachment 1) did what I expect. I would like to have DAQ box read and write encoder signals and pressure signals at the same time so I can plot PV diagram.
2. During acquisition, some data points are usually missed, shown in attachment 2. Is there any way to solve it?
3. I tried to combine two VIs but it never work (attachment 3). Can anyone give me any suggestions?
PS. Labview 9.0 and NI USB-6216 are used.
Dummy signals are 30Hz sine waves for pressure and 2 TTL signals for encoder A and B at 5kHz.
Thank you!

Thank you for your help, Peter!
I attached the wrong file for attachment 1. The initial code for measurement is attached here.
The sampling rate is 20000 and the sample mode is continuous.
For missing data points, it improved when I add "wait until next ms multiple" in while loop.
Follow the example you gave me, I'm able to generate TTL signals in one vi, attachment 2. Could you please check if it's correct?
It looked fine with simulated signals and hope it will go well with real engine tests.
I have two more questions:
1. Does the input number for wait until next ms multiple should always be the same as "samples per channel" in sample clock?
2. How will the value of "samples per channel" in sample clock affect data acquisition? I tried 1000 and 10 but didn't see any difference between these two.
Thanks a lot.
Attachments:
recording VI.png ‏332 KB
AI+CI+CO.png ‏72 KB

Similar Messages

  • RH11: Glossary and Index do not display in generated output

    I am having such a tough time with RoboHelp. My current issue is the glossary and index not appearing in the generated output. They used to. However, yesterday I thought I should go in and clean out all the junk in my project, i.e. I had about 5 glossaries and 5 indexes because I was testing things out. I made sure I didn't delete the populated glossary and index, but by the end of the day, they were both gone. So, I located these again from a backup and imported them back into my current project. Everything is there...all my terms and definitions, the index and the links...blah blah. NOTE: Everything is there, but I was required to block it out due to privacy issues.
    However, this is how it now displays when I generate:  Why won't this populate?
    Thanks,
    Pam

    Rick,
    I'm using IE 10, Version 10. And everything was working fine until I started deleting the extra glossaries and indexes I had in my project. I have been generating locally, then when I get to a point where I'm satisfied with my changes, I generate to the server. I wasn't having a problem with this until I deleted those files. Although I have imported the glossary and index back into the project, still nothing. Now, even if I pull up an older version of this same project, the glossary and index are now gone from that too. I'm assuming that everything must be linked, but I can't figure out what I'm missing. Generating to Chrome has the same issues. I had one of my developers look at it yesterday, and he thinks there is some file missing somewhere that RH11 needs to generate the glossary and index. What file would I be missing? The .glo and the HHK files are in the project. I really need to upload this for the client, so any help you can give me is much appreciated.
    I read on one of the forums that I should have this ticked in the Optimization Settings for Responsive HTML:  "Limit the scope of project styles only to topic contents". I did that and it caused all kinds of other issues.
    On Monday I updated to RH 11.0.1 - would there be an issue with that? Is it a dll issue?
    Thanks Rick,
    Pam

  • How to use an analog signal to conditiona​lly generate a TTL(or square function) signal?

    Hi everyone,
    I am using PCI-6229 and trying to develop a code that can generate a TTL/square function signal as soon as one analog input satisfies following conditions: 1. Crossing a certain value (say, 0 V); 2. Falling edge slope. The time delay between the crossing point and newly generated TTL/square signal will be critical in my measurement, and it should not exceed 1 millisecond. Any suggestion on it? Thank you in advance!
    Solved!
    Go to Solution.

    Are you actually using the Excel add-on called Measure? That is what this board is for. Otherwise, you should post to the Multifunction DAQ board and mention the language that you are using.

  • TTL signals from motor outputs

    I'm currently using a stepper motor with a MID-7604 drive and a PCI-7344 controller. I would like to output TTL signals from the drive at certain motor positions, but do not have an encoder (which is required for breakpoint signals). Is it possible to `construct' a TTL type signal using the low-level motion functions in LabView, and then output them through a motor axis that is not currently being used?

    Hello,
    Depending on the type of output that you want to generate (single pulse or pulse train) you could use the Digital IO port of the motion controller with the Set IO Port MOMO.flx function to toggle DIO lines or you could use the Configure PWM Output.flx function to generate a pulse train.  The downside is that this will be software timed based on the current position as determined by the controller.
    There is not any way to manually modify the motion control signals that are generated by the controller.  That is all handled by the FPGA of the controller.
    Regards,
    Scott R.
    Applications Engineer
    National Instruments

  • How to route Quadrature Encoder signal to CC1 using PCIe 1429 + IO extension card

    Hi there,
    i am currently trying to interface the Basler L304kc to the NI PCIe 1429 + Cameralink IO extension board
    I want to operate the camera in Ex-SYNC level controlled mode. I would like to route external Quadrature Encoder signals (connected to the IO extension board) to the CC1 cameralink control of the camera
    Currently, I cannot find this option either in MAX or the Camera File Generator.The L304kc camera file only provides pre-defined pulses, or MAX only offers "External","ISO","RSTI" options for the CC1 sources.
    Is it possible to route the encoder signal from the IO extension board directly to the CC1 of the camera? Or is there a work-around?
    Thanks!
    Derek Chan
    Application Engineer
    Basler Asia Pte Ltd

    Hi Alex,
    I posted the following (similar) text to the support center but I think it is of common interest:
    A) CL-card with ext. board. One can use the ISO, ext. and RS422 encoder inputs and also output cannels ISO and external.
    There is also a SMB connector corresponding to the ext. channel 0.
    B) with MAX one can define what kind of signals should be routed to CC1 to CC4. As I learned from
    this side one cannot use MAX or the Camera File generator but has to do this manually in order to use RS422 encoder triggering!!!
    C) on the other side there exists function to route and control signals explicitely, for example
    * imgSessionLineTrigSource2 -> what is this good for then? All your manuals are saying that this is done in MAX or the camera file by defining what signal drives the correspondung CC ine?? On the other side there is an example in CVI that does not work ("Trigger Each Line From Encoder") (at least it does not work with the PCIe1430).
    D) Can one implement the CC routing from MAX or the camera file manually with the following functions
    * imgSessionLineTrigSource2
    * imgPulseCreate2
    * imgSessionTriggerDrive2
    or does MAX use hidden functions ore mechanism to control the CL Cards?
    E) I can use one single line to setup scaled encoder triggering
    * imgSessionLineTrigSource2(iLS_ZK1_SessionID, IMG_SIGNAL_SCALED_ENCODER, 0, IMG_TRIG_POLAR_ACTIVEH, 0);
    but this only starts to work if I reset the encoder position to zero by sending this to the CL card, i.e.
    * imgEncoderResetPosition(SessionID);
    AND only in positive counting direction!
     If I just run though the zero position without a position reset I do not get ExSync on CC1????
    Is the information where to route the Scaled encoder to coming from the camera file? Why cannot I simply and explicitely route the scaled encoder
    signal to a certain CC line? Why using all those different approaches?
    F) now if in addition to E) i use
    * imgSessionTriggerDrive2(iLS_ZK1_SessionID, IMG_SIGNAL_EXTERNAL, 0, IMG_TRIG_POLAR_ACTIVEH, IMG_TRIG_DRIVE_SCALED_ENCODER);
    to drive ext. 0 (SMB connector) I can see exactly this behavior on the scope. No signal until I reset the encoder counter. Then I get signals as long as the image sequence is running. After the recording the signal disappears.
    kind regards, Holger h.baur(at)ivisso.com

  • Can I use the 'Export Signal Property Node' on a quadrature encoder?

    Hi,
    So I don't know which counter board I'd be using yet for this (it's used in conjunction with a PCI-6280--the PCI-6280's counter inputs are all taken and so I need another board), but assuming this is possible at all in DAQmx I wouldn't mind knowing whether, say, the PCI-6601 (or any other timer board for that matter) could do this. I'm programming this in LabVIEW 2010 by the way. 
    I want to have a counter which counts the number of pulses on one channel (I'll call this the 'clock' channel) between when another channel goes from low to high (which I'll call the trigger). It's basically a pulse width measurement, but I only care if there are more than n clock pulses between triggers. I need to have a hardware-timed digital signal which goes from low to high if there are ever more than n pulses between trigger changing state from low to high. 
    What I am planning to do is this: 
    Wire 'trigger' to the z-input of the quadrature encoder, and set the z-input value to some arbitrary large value such that, at the quadrature encoder counter task's settings, the counter reaches terminal count in n pulses.
    Configure the quadrature encoder counter using DAQmx Export Signal Property Node (tutorial I was looking at is here: http://zone.ni.com/devzone/cda/tut/p/id/5387 ) to toggle a digital channel ('counter event output') from low to high if the counter reaches terminal count (ie, if the encoder reads n pulses).
    If the encoder ever reads n pulses on 'clock' between two rising pulses on 'trigger', it sets counter event output high.
    Is this possible? Reading through the manual of M series PCI-62xx devices, the index pulse loads the counter with a particular value so it seems like you could conceivably set the counter to the terminal count if you wanted. My only real problem is whether DAQmx Export Signal Property Node works on all counter tasks or just on edge counting tasks. 
    Thanks in advance for your help. If this isn't possible, I can reply with more details on the problem this is supposed to solve so that you can help me figure out an alternate method.
    Solved!
    Go to Solution.

    There is probably a way to do it, but it it may be easier to use an X-series board for the job.   They support a new counter capability for count reset on a digital edge without needing to be configured in encoder position mode.  I am not sure exactly how that feature's been implemented however, so maybe it won't make things easier after all.
    The plan based on the hoped-for behavior: 
    1. Configure an X-series counter for pulse generation based on "ticks" of your clock channel.
    2. Set both initial delay and low time to the critical # of ticks.
    3. Configure for count reset on a digital edge (if possible in pulse generation mode)
    4. Configure the count reset value to be the critical # (or possibly 1 less, if possible in pulse generation mode)
    5. If you want the output to remain high indefinitely, configure the counter task to use its own output as a
    pause trigger, and pause while high.
    The way pulse generation works is to preload a # of "low time" ticks into the count register.  Then every source edge will decrement the count.  When the count reaches terminal count (0), the counter's output is toggled (or can be configured to pulse).  The register is then loaded with the # of "high time" ticks and the process continues.
    You would be perpetually interrupting the count-down process as long as you got your triggers in time.  The count would keep getting reset to the # of low counts, keep decrementing toward 0 without reaching it, and so on.  If ever you did reach 0, the output state would toggle high, then the high state would prevent subsequent clock signals from decrementing the count.
    You can conceivably do a similar thing with a 6601, but I'm pretty sure you'd need 2 counters working together to get it working.
    -Kevin P

  • RPM Measurement using Quadrature Encoder and PXI 6602 counter

    Hi,
    I am on a project at work where I need to verify the speed (in RPM) of an unloaded motor which can operate up to 1400 rpm.  After doing some research, i determined that a quadrature encoder could be used to make the measurement.  I am looking at this encoder  http://sine.ni.com/nips/cds/view/p/lang/en/nid/205321.
    I have a PXI 6602 counter/timer module in which I would like to interface to the quadrature encoder.  I would like to create a VI that allows me to calculate the speed using the encoder.  Can someone provide me with details of what needs to be in the VI or an example which can do this?  At the most basic level, i want to calculate the speed on demand.  After doing this, i would like to figure out how to quickly calculate the speed so that i can determine response time of the speed changing within sub-millisecond resolution (1 ms resolution max).
    Further, i created a VI that allows me to change the pulse width of a 100 Hz pulse train at run-time which tells the motor controller the desired speed.  I would like to be able to use this VI to change the speed of the motor and the first VI (that I am seeking help about) to calculate the response time (time between the initial speed and settling at the new setpoint).
    I am familiar with the NI example finder, but have not been able to find an example that I can use.
    Thanks,
    Gary

    Hey Gary,
    I think for you setup, you should try using the Meas Dig Frequency - Low Freq 1 ctr. You can find it by searching example finder with 'low freq'. This vi tells you the frequency of a digital signal by sampling between two pulses and inverting the time between pulses. If you hook up your encoder to a counter and have that counter specified in the vi, it will be able to give you on demand readings of frequency (you can do some multiplication to get the rpm value, freq*60/pulses per revolution of encoder). A simple way to take continuous readings is to put a while loop around the daqmx read and the data output of the read. You can also replace the numeric indicator to a waveform chart to graphically display the change of frequency or rpm readings over time.
    You should be able to integrate this as two separate tasks with the pulse train vi you created earlier.
    Hope this helps
    Luke W

  • How to calibrate Quadrature Encoder signal

    I have PCI-6601 and CB68-LP connector. How can I use these to interpret quadrature signals coming off an optical encoder (to sense the angular position of an-observatory dome). The encoder is 16-bit(don't know what this means in terms of PPR). I want to have a display in Labview that will show me the position of the dome in a fraction of 360 degrees with some reference(true north?), the dome rotation controlled by a three way switch(clockwise-off-anti-clockwise). I don't have much experience with labview and any help will be appreciated.

    If the encoder is 16 bit then it would seem that: -
    360/65536 = 0.0054931640625° or there abouts.
    You can break the project down into two halves nicely.
    1) Hardware interfacing.
    2) Software read out.
    The hardware interfacing means two basic things:
    1.1 What is the encoding technique
    1.2 How are the signals conditioned for output to an external device.
    The software is classic:
    2.1 Input
    2.2 Process
    2.3 Output
    The optical encoder could be one of a few types and you need to understand both the signalling / interface and the coding technique to progress further. A good start will be the manufacturers data sheet for the product. Contact the manufacturer.
    Once you understand the coding technique you will then know if the unit is absolute or relati
    ve. This will then allow you to determine how you can point to true north (easily with an absolute encoder, it always tells you exactly where it is).
    If it is a classic quadrature encoder then the relative phase of the reference and movement signals gives you direction. Counting transitions gives you realtive movement. But if the power went off on the PC. you don't know where you are unless you go to a home position! That could be 359° round !!!
    Good Luck

  • FPGA programming for motor control using free downloadable IP cores for PWM and Quadrature encoder interfacing

    Hi,
    I have a cRIO-9014 with a NI9505 DC brushed servo drive module, and I would like to program the FPGA for PWM and Quadrature encoder interfacing using the intellectual property IP functions mentioned in the "CompactRIO Motor Control Basics Tutorial":
    Quadrature Encoder dX Method (FPGA, Use in SCTL).vi
    Pulse Width Modulation (FPGA, Use in SCTL).vi
    I made a search at ni.com/ipnet but I couldn't find them.
    Where can I find free downloadable IP cores for PWM and encoder blocks to include them in my FPGA interface program?
    Thanking you in advance,
    Manuel
    Solved!
    Go to Solution.

    Found by myself (google search!) at:
    https://lumen.ni.com/nicif/us/codepowelecguide/content.xhtml

  • How can analog signals are measured every several counters from Quadrature Encoder using USB-6221

    how can I sample analog signals every counters from quadrature encoder using usb-6621?

    There is a well documented example of what you are trying to do at :
    http://zone.ni.com/devzone/explprog.nsf/webmain/DD85F07A7CA99F8F862568690062DE54?opendocument
    Don't be afraid because of the BNC-2120. It is just used in this example to simulate the pulses from a device. So it is not needed in your case. Obviously, you will need to change the number of increments/rev according to your encoder to get correct RPM values.

  • USBOTG and Charge Simultaneo​usly on Stream 8

    To keep this thread as efficient and productive as possible for all those who it will be useful to:
    Unless you have in front of you
    1. A schematic of the Stream 8 USB port (USB port and battery power circuit etc)
    2. Source code of the BIOS firmware and kernel which control the hardware
    Please DO NOT reply simpy to say "this is not possible".  Given the above being true, you do not have enough info to say "not possible".
    If no one replys with a solution, let it be called impossible by default.
    Also please do not reply to say "I don't know how"  or "but I know how to do this other thing" thats also not so helpful.
    A BIOS update or other software update may be required by HP, Microsoft or both to make this really intuitive, and completely possible, functionality available.
    And hopefully this thread can be a consolidated effort by all of us who have the Stream 8 to bring any such necessary changes about.  A majority of other tablet PC are capable of this.  It seems that only the Stream 8 and a few others have trouble with it.
    ~~~~
    I desire the ability to use a simple, perhaps standard, inexpensive cable (with minimal active electronics inside) that allows me to host and use one or more USB devices on the Stream 8 via its USB micro B port while this cable can also be connected to a standard charger and charge the Stream 8 simultaneously.  This means the cable has a minimum of three connectors.  One possible configuration is as follows (leaving the normal charge cable aside):
    1. USB Micro B Male - to connect to the Stream 8
    2. USB A Male - to connect to the AC charger (ie the one that came with the Stream 8)
    3. USB A Female - one or more connectors to plug in USB data stick, keyboard, mouse or even a hub.
    Connector # 2. above will provide power to charge the Stream 8 via conn. #1 and also supply power to the external USB device(s) via conn. #3 while they are in use - all simultaneously.
    A plus if the same cable can act as a normal OTG without a charger for when no external power is available.  Maybe this will require a switch or some active electrontics inside.
    The final part of this goal is kind of important for various reasons.  I would like HP, the maker of the Stream 8, to state in writing the correct mode necessary to do this so that other manufacturers or even do-it yourselfers can make maximal use of their HP tablet equipment.
    ~~~~
    The neat thing this will alow a person to do with their tablet, is to work at home using the tablet like a desktop PC by connecting a keyboard, mouse, perhaps external display (with USB to display adapter) and work for a long time without being time limited by battery life because the charger supplies the power to everything involved.
    If there is only one #3 connector on the cable then an additional hub of coarse would be required to provide support for those multiple USB devices at once.  However it would be better if there were multiple of the #3 connectors built in to the cable itself.  This would be best because a proper USB hub also requires its own power.  Only one power adapter would be needed if the whole thing were integrated into one.
    ~~~~
    I would really like replys from anyone who has already accomplished USB OTG plus simultaneous charging with the Stream 8. (independant of any published "correct" way is also welcome)
    The date today is 2015-01-16.  If by 2015-02-16 (one month) no one has posted a solution then lets start to bug HP and Microsoft about it shall we?
    ~~~~
    Technical Background:
    I understand the possibility that the tablet software and or firmware needs to make a decision about which way power is flowing on the power pins of the USB mirco B port.
    I know that with proper design the electronic circuit carring these power signals inside the tablet could be sensitive to what is plugged in and safely decide for itself what to do without any need for software control.  For example by periodically testing/sensing voltage differentials or current direction to see which sides of the connector can supply power.
    But that is only one of many "could bes"
    Furthermore this may be non-standard with respect to the USB standard.  What appears to actually be the case with many OTG+Charge cables is that physical cues built into the cable or charger are used to signal to the tablet what the situation is.  Then the tablet's firmware/software recieves the signal, interprets what the situation is intelligently and responds by flipping the correct hardware control bits to turn on, or off power flow at the port and also control its direction in or out.
    I am not familiar with the USB standard.  Perhaps I could do more research, if I had faith that HP followed it with the Stream 8 or even that the standard covered this situation explicitly.
    But to a degree it seems like I am having to invent something that should intuitively just exist as it does with other tablets. No?  Maybe I am overthinking but I can't find any USB OTG + Charge cables that specify compatibility with the HP Stream 8.
    Anyway, I have been made familiar with two methods other tablets use to send the above mentioned signal to the hardware/firmware/software of the tablet to clue it in that it is time to charge vs. time to OTG or both.
    The first method is a 0 Ohm to 200 Ohm short between USB A pins 2 and 3.  Those are the bidirectional, differential data lines D- and D+ respectively.  In data mode all data goes back and forth on these lines.  When you charge via a data cable, it is the charger module which places this short, not the cable.  I have measured the short on three different chargers.  It is 0 Ohms on two of them, one of those being the charger which came with the HP Stream 8.  The other 0 ohms was generic.  The third was for an apple iPad and it measured about 53KOhms.  That is probably not the 0-200 Ohm resistor but probably it is the termination impedance indicating that there is some communication intelligent serial port in the charger itself.  Let it up to Apple to be different.
    This method is somewhat moot because this mode of signaling would prevent OTG + Charge because it seems unlikely that you'll be able to OTG when the data lines are shorted to one another and loaded down with such low impedance.  I could be wrong about this. . . 
    The other method I have seen suggested to work with some tablets and phones other than the Stream 8, is to short the USB Micro B pin 5 to pin 4 with 0 Ohms to 100,000 Ohms.
    USB B has 5 pins.  USB A only has 4.  The extra pin on B displaces the GND pin from pin 4 to pin 5 and makes pin 4 an ID pin.
    So this signal applies a pull-down to the ID pin (pin 4) or in some cases I have seen it suggested to short it down with 0 Ohms.
    Dead shorting things always makes me nervous.  If ID is a simple high impedance normally high input, a resistor could be used to make the voltage well below the low or zero threshold while also preventing the risk of damage when fooling with a device you don't have the schematic for.
    Still, 100K is a little high for a "pull down" in most situations I am used to.  Even a 10K would be iffy. A 1 K or 2 K seems pretty safe but then things are lower and lower current these days. . .   Anything but a dead short though if possible.
    So it seems possible to me that the device might be able to "identify" by the specific value of the resistor that is here.  In other words the resistor is not a pull down but actually an analog ID signature, in which case the exact value will be critical. So if this is the case, a guess isn't going to work.
    Obviously in any such scheme as described above, some chip inside the Stream 8 would need to be responsible for supporting such intelligence. I am hoping that the Stream 8 has such a chip.
    Likely a register inside that chip would reflect at all times what the state of the ID pin is with a binary number.  All that is needed is for the BIOS to address the chip and the register in it and read that number via the bus to determine what is going on at the port. Finally it would use that info to send hardware control signals to the power electrontics to set the proper direction for power to flow etc.  (and change the state of the icon on the screen of coarse)
    I am not sure if the ID pin method described is a USB standard or not either.
    There may possibly be a third way. But I do not suspect it would be possible with a non-active external device. In any case too complicated for the novice DIY for sure.
    The apparatus would need to act is some kind of bus extender.  Like an active hub.  But it would use the serial USB data lines handshake and in addition to replicating one or more additional USB ports, intelligently inform the tablet to get with the program which is "now we are going to otg and charge at the same time."
    This requires an intelligent external device with a CPU in it probably.
    It seems to me that many other tablets have managed accomplish the goal here witho the necessity for an intelligent external device and so the Stream should also be able to do so.
    There is a device which claims to be able to work with the HP Stream 7 and 8 and even provides ethernet and DVI ports in addition to the USB and of coarse charges the stream as well.  But its expensive because it is active.  Se here:
    http://amzn.com/B00OVDE0GC
    It is called a "Docking Station"
    A reference for a product that does exactly what I want (possibly without active electronics) is here:
    http://amzn.com/B00LTHBCNM
    It is by Kirin and it is a squid type device with four USB ports.  It does precisely what my objective is.  But reading in the reviews a Stream 7 user indicated that it would not OTG and charge, not exactly clear if it worked as an OTG USB hub or not.  Another reviewer indicated that it would not even support a single USB device much less charge on the Stream 8.  This device has a switch on it.
    I forgot to mention that some "hackers" have claimed to succeed with other tablets to trick their devices by using a multi step process to plug things in.  Usually in general they would get the tablet connected and charging first, then they would flip a switch or something removing whatever resistor or signal was presented by the first switch position. For whatever reason the tablet would continue to charge. Then the data lines would be free and they would plug in a usb stick and it would mount up correctly even as the tablet was still charging.
    Its like the power circuit has a latch that will not allow it to flip to "power flow out" mode so long as it senses power is still flowing inward regardless of what software is telling it.  Complete guess here.
    Such tricks  seem iffy to me.  Changes in the BIOS could change the way this works.  Also you can't be sure what is really happening if you don't have a schematic.  You could damage your tablet.  A lot of people go by the charging icon indicated in the OS to know if the tablet is charging.  But I am a low risk kind of guy and my policy is generally to not intereperet indicators to have any meaning at all the once a device is operating in a non standard setting.  Especially when its something i didn't build and couldn't fix if I fry it.
    Hypothetical reasoning: tell me what sensory data actually drives the state of the on screen charging indicator?  Does it reflect the hardware control bit that actually programs the power direction and state on the port?  Or does it measure the direction of power flow, say in the battery supervisory section of the circuitry?  Point is - none of us have a schematic because it is proprietary. To really be safe depending on how smart the hardware electronics are, the port needs to be in a deliberate "power flow in" mode. If it is in a "power flow out" mode and power is being delivered externally as well you wind up with the two power supplies driving the same power nets.  In that circumstance, the two opposing regulators which are both attempting to drive 5 V may have slightly different voltage calibrations.  That could cause them to fight each other with over 100% of their current capacitiy.  For example if one attempts to regulate 4.95 V actual and the other and the other attempts to regulate 5.05 V.  Current will then flow to the tune of 100 mV / a couple milliohms in the wires connecting the two.  This could be several amps. (a lot)  In other words, like I said:  You want the tablet to know that power is coming in not going out and to automatically hit the necessary internal switches to make this happen. Probably the tray icon should accurately indicate this but in some goofy situation it might not. There may be a chance the icon could indicate charging and still be burning up or stressing some circuit of the tablet or charger.
    Another possible thing I could see happening is if you play with those resistor signalled types enough you might find a resistance value that winds up placing the device in an intermittant state.  In other words it keeps flipping back and forth rapidly between OTG and charge.  It may give the illusion that it works.  You may have marginal communication with your USB devices and the battery might even charge.  But still lots of stress will be on the power circuit.
    It is hard for me to risk a perfectly good tablet if I am not sure exactly what I am doing.
    If some brave individual performs their own experimentation and verifies that it charges and OTGs and you tell the rest of us, then you'll be a hero.
    Maybe one of you has good knowledge about the USB standard to be more confident in such an experiment . . . like how is the ID pin 4 REALLY supposed to work for example?
    That is what I know so far.  If you think you can help further, thanks in advance, or if this has helped you, then your quite welcome.

    https://www.youtube.com/watch?v=X_JnKir_PWU
    Was about to ask whether anyone tried this with their Stream 7/8, I hope you don't mind me putting this here since our goals are the same. So did anyone try this? I might do it soon, but I just bought an OTG cable, so maybe next time. It just requires a microusb Y cable and a female adapter, no dismantling/cutting/soldering necessary.

  • I want to use two analog channels and one digital simultaneo​usly

    Hello and thanks in advance for reading this!
    What I am trying to do is generate two different signals from the output channels of my interface card (PCI6024E) and simultaneously use a digital line so that I can switch two tranzistors (one NPN, one PNP) which actually control the "flow" of the two signals. This means that both signals need to be "active" while the VI is running and at the same time whenever I want to choose the signal not in use I need to use the digital line so that I switch the tranzistors and I get the desired signal.
    I have already created a VI which activates a digital line and while I was trying to add with the NI-DAQmx Assistant the first digital output, I discovered that it c
    ould not be used simultaneously, because there was the error code -200324 saying that "Device not available in NI-DAQmx. It is possible that the device is being used by Traditional NI-DAQ or that the device is being reset."
    I did reset the device but as I get it when VI runs, it cannot have an active digital channel and an analog output channel at the same time (not to mention two analog channels). Correct me (And make my day if I am wrong but this seems to be the case. Thanks a lot for your time!

    Hey Shootist000,  Thanks for the replies.  First off, I am actually okay if we both have each other applications so I am not concerned about that. It is still unclear from what you have said as to whether I can in fact, use these two separte time machine backup to create two separate profiles on the new hard drive.  If that in fact can be done, then - will it create two copies of the apps we both have in the ROOT of the drive as well as placing all the ones we each have separately?
    And reading your second reply, makes me think that maybe the partition is the way to go to begin with and then down the road - after I am in the new iMac, I could reformat the iMac 27 with only one partion and restore my son's latest back prior to the reformat thus giving him full access to the 2 TB of the drive.
    If this is still making sense, does this mean :
    replace the 1TB with a 2TB - but have it partitione - 1.5 TB & 500 GB.
    Install(Restore using Time Machine) my latest back up prior to the  1.5 partition
    Install (Restore using Time Machine) my son's latest back up prior to the 500 gig partition
    Lastly, in order for us both to be using the partioned computer - I am assuming Switch user can no longer be used - so would we need to restart and select our respective partions in order to use the computer?   And if so, how would we each be able to be using time machine to back up - two separte external hard drives - with each one dedicated to only one partition? Or ? 
    Thanks so much.
    Ironically, I am only trying to do this so that I don't need to manually install all his apps, setting, games, blah blah for this temporary period.  :-)

  • How do I use a quadrature encoder as an external clock (PCI 6229)

    Hello, ( a similar post has been placed on DAQ forum apologies as I did not know best place)
    I have a PCI 6229 M Series data acquisition card. I want to use a quadrature encoder to be the external clock driving the acquisition of a number of signals. I have set up reading 24 signals each time a clock pulse is received using the DAQ assistant and set my external clock to pin pfi8 (I think) this is then connected to an encoder output. This works well enough until the encoder is run too fast when it appears I am either missing pulses or getting bounce.
    How can I set up to clock using a quadrature encoder? I have seen a number of questions on this forum regarding quadrature encoders and reverse counting but not on using them as an external clock.
    Basically I want to have the stability and "bounceless" nature of using two outputs from a quadrature encoder whilst still using an external clock. Is this just a case of configuring controls to certain pfi's? If so how is it done?
    Any help or pointers would be helpful. So far I have managed very nicely by simply using the DAQ assistant and the interface it has would suggest that if configured for a certain pfi pin I could actually still use it.
    Thanks in advance.
    Kevin

    Hi,
    Well I've had alook into this for you and I'm not quite sure I understand what you are looking for.
    Is it possible for you to phone back in to support?
    The reason you are seeing bounce at high speeds, or indeed loss of points, is due to the sampling rate that you have set up.
    What you will find is that the trigger will start an aquisition of a number of points at a certain rate.  If your sampling rate is too low then you will not finish that sample batch before the next set of samples is recorded.
    It is possible to use an external clock into a trigger or digital line, however this will limit the number of samples you can take to the speed of your encoder.
    If you increase your sampling rates, and then configure a start trigger from a single input from the encoder you will be able to record a number of samples after a rising/falling edge.  (Set the clock as an internal clock)
    Hope this helps
    AdamB
    Applications Engineering Team Leader | National Instruments | UK & Ireland

  • Speeding up quadrature encoder read out

    Hi,
    I`m using a quadrature encoder together with a 6259 DAQ Card and BNC2110 Terminal Block.
    I managed to have it working with the DAQ-Assistent at 80Mhz using the Counters and reading one value at a time. Before the DAQ-Assistent I used a DAQmx command to connect PFI10 and PFI9 as the BNC2110 Terminal only outputs PFI0-9. This works but it is really slow, the distance between each measurement point is around 6 us. The VI is in the attachement (AquadB_one_value.vi)
    So I thought I might use the n-values version with the DAQ-Assistent but this does not work and I dont see any reason why, it is complaining about that connection between PFI10 and PFI9 which it didnt do before in the one-value-version. The VI is also in the attachement (AquadB_n_values.vi)
    I also tried another method using a VI I was given some time ago and modified it but here the distance between each measurement point is also around 6us. This VI is also in the attachement (Counter - Read Encoder.vi)
    Or am I missunderstanding something? The minimum achievable time distance between measurement points should be 1/80.000.000 s where of course the value can only differ 1/0/-1 because it has only calculated one new change in the A and B Signals right? I thought with using the n-values it is storing all the calculated values in the memory and I am transferring them afterwards for doing all the "post-processing"?
    If I am wrong, how can I spped up the read-out of the calculated values any other way?
    Best regards
    Attachments:
    AquadB_n_values.vi ‏56 KB
    AquadB_one_value.vi ‏49 KB
    Counter - Read Encoder.vi ‏98 KB

    Hi Dani_munich,
    I just realized that you asked the same question in our Service request. In the service request, I was missing out more information which I found them here by chance . I will further assist you in the SRQ you have created. I also sent you an email.
    Regard
    Anoj
    Anoj Mubarak
    National Instruments

  • Simulate quadrature encoder output without hardware

    I am brand new to Labview and have not had any training other than youtube and this fine forum. I am a mechanic trying to solve a problem using labview. I am posting this new question because I don’t have any hardware so I can’t use the examples I’ve seen others pointing to.
    I’m trying to simulate the output of a quadrature rotary encoder. Once I have done that I want to use Labview to program an instrument that reads that signal and makes mathematical calculations to it but I need the signal first. The encoder will attach to a shaft that will rotate clockwise and then counterclockwise at a rate of about 122 times a minute.  The total shaft rotation will be between 0 - 18 degrees. It is important to me to know the direction of the shaft. The quadrature encoder will send out 2 square waves with one wave behind the other. The way I’ve tried to do this is by using 2 Simulate Signal modules each sending out a square wave at 2 Hz. I’ve connected a single knob controller to the both frequency inputs of the signal modules to simulate the speed the shaft rotates back and forth. I’ve done the exact same thing to the amplitude input to simulate the degrees the shaft turns before changing directions. My problem is the changing directions. I can delay the phase, which is what I want to do, but I can’t do it in real time and I can’t do it in a single 180 degree step. What I would like is a switch to change the B channel from +90 to -90 when it is toggled. If I could then toggle the switch when the amplitude reaches 18 degrees or less I will have an encoder signal. Thanks for any help you can provide.
    steve
    Attachments:
    Rotory Encoder.vi ‏59 KB

    Steve,
    From what I understand, you want to make a 180 degree phase shift every N intervals?  I modified your code to do this.  Let me know if that gets at what you are doing.
    Cheers,
    Chris LS
    National Instruments
    Applications Engineer
    Visit ni.com/gettingstarted for step-by-step help in setting up your system.
    Attachments:
    Rotory EncoderEdit.vi ‏61 KB

Maybe you are looking for