Measure voltage by event with AT-MIO 64E3

Thanks Chris for your reply,
I haven't CWAI controls in to Project->
Add->Components and Controls.
Where can i found it.
Thanks so much.
Best Regards.

That example is written with Measurement Studio. Measurement Studio includes development tools for for ANSI C, Visual C++, and Visual Basic developers. That is what this discussion forum is setup for so I mistakenly assumed you had it. The DAQ ActiveX controls are the only controls that are available for free. All the rest of them (User Interface, Analysis, etc.) are included in Measurement Studio. Since you don't have it, then you can't use the example I sent, but you can still use the CWAI control. Add the control to a project and then you can look at the example's CPP file to see how it is used.
Best Regards,
Chris Matthews
Measurement Studio Support Manager

Similar Messages

  • Measuring impedance with AT-MIO-16E??

    Hi to everyone,
    I am starting my experience with Labview at the technical university and I have to "write" a program in Labview 6.1 that will use the NI AT-MIO-16E-10 board and will generate the signal to Analog Output, the signal will go through the chemical sensor and then through the Analog Input back into the board. And I have to measure the impedance of such a sensor. Maybe some of You had made such a thing and can help me. Right now I started learning how to work with Labview.
    I would be very grateful for any response

    Hi,
    If I understood well, you want to measure a resistive sensor using your MIO board.
    You are using you AO to feed the sensor, and want to measure resistance in your AI.
    The Analog Inputs of the board you mention can only measure voltage, to convet a resistance into voltage we normally use a bridge circuit - check the following link: http://zone.ni.com/devzone/conceptd.nsf/webmain/C83E9B93DE714DB08625686600704DB1 - it's about strain gauges, but the principle is the same.
    For software, seach on the LabVIEW examples for DAQ voltage measurements.
    Hope this gets you started,
    Paulo

  • Measuring voltage with gpib board

    I am using a NI AT-GPIB/TNT PnP board !! I am trying to use it to measure
    voltage levels. Can i do this with out using an external instrument ??

    Hi Daemon
    GPIB boards are just for instrument communication only!!! They are certianly
    in no way designed to measure voltages.
    Tim
    daemon wrote:
    > I am using a NI AT-GPIB/TNT PnP board !! I am trying to use it to measure
    > voltage levels. Can i do this with out using an external instrument ??

  • How to measure current and voltage and rpm with daq device

    i am measuring current and voltage and am wondering should i use shunt resistors or current sensors hall effect sensors. i have a pci 6221 and a scc-68 breakout box. what specifications or size should the shunt resistor/current sensor be or should i use another device to measure the currrent and voltage. do i need any other safety device between the resistors, current sensors and the scc-68 breakout box when measuring the current and voltage. will the daq card pci 6221 pick up a signal from the resistor. what terminals should the wires from the resistors and current sensors be connected to in the scc-68. i am using a proximity switch to measure rpm of a motor. should the proximity switch be 2 or 3wire connection. should it have an analog or digital connection and is a power supply required to power the proximity switch and should it have an npn or pnp connection

    hello,
     i was going to use a 20amp 50mv, or a 20amp 100mv current shunt and connect wires directly into the AI input terminals of the scc-68 from the current shunt would these be suitable. would current shunts such as these be suitable to use http://uk.farnell.com/elc/sh10020/shunt-sh10020-20a-100mv-1-class/dp/1319576 or http://uk.farnell.com/datel/3020-01098-0/shunt-50mv-20a/dp/1339338
    is it ok to use either a current shunt or should a hall effect sensor be used  such as this http://ie.farnell.com/honeywell-s-c/csla2cd/sensor-hall-effect/dp/1082269 . which of them would be more accurate or are both of them fairly accurate.
    when i am measuring voltage can i connect two resistors between the positive and negative of the wires going to the battery and connect two wires from either side of the resistor directly into the analog inputs of the scc-68 and measure the 12-15 volts directly would the pci6221 and scc-68 be able to measure the voltage drop across the resistor.
    i wanted to measure rpm also does it matter whether the proximity switch has 2 or 3 wires and should it have an analog or digital/frequency output for cponnecting to the scc-68

  • How to measure a current signal with NI 6211?

    How to measure a current signal with NI 6211?

    Hi Clecio,
    This is a charge accelerometer. It is different from the IEPE accelerometers that outputs a voltage signal.
    You need a charge amplifier. Then according to the charge amplifier output we can select an appropriate module to measure the signal.
    It is not possible to measure charge accelerometers with NI 9234 directly.
    Best Regards,
    Rodrigo Schneiater
    Application Engineering
    National Instruments Brazil
    If this information was useful, please click in the 'KUDOS!' beside.

  • Programmed vs measured voltage on Keithley 2400 and other things

    Hello everyone,
    I have two issues with our Keithley 2400, which we control through Labview, and I would be very grateful for some help/advice. The issues are listed below:
    1) We use the 2400 for 4-point probe measurements, so we plot graphs of current vs voltage to get the resistance from the slope of the curve. However, when we look up the data generated during a measurement, the voltage sweep values that we program often, but not always, do not match the measured voltage values. For example, what was meant to be 1 V, might actually end up being 1.2 V or maybe 0.8 V, this can be both positive and negative with respect to the programmed values and is not constant. This also leads to the fact that our curves, although straight (so Ohmic conductor), do not go through the (0, 0) point on the graph.
    2) Second problem is that we would like to determine what is the time between successive measurements in a voltage sweep. We have tried some example vi files that by default come with the Labview, e.g. Keithley 24XX Read Multiple - SW Trigger or Keithley 24XX Read Multiple. If someone knew how to find the time separation, then we would be grateful. We only have control over the number of invididual readings taken and the timeout, which we guess is the maximum time allowed for the measurement.
    Many thanks!

    Good Afternoon PiotrW,
    1. Could you please provide the code you are using to program the voltage sweeps? 
    2. You could use the timestamp output of the Keithley 24XX.lvlib:Read (Multiple Points).vi to allow you to find the time difference between successive samples. It should be a simple case of subtracting succesive measurements from each other to find the time difference between data points.
    Regards,
    Al 
    Regards,
    Al C
    National Instruments,
    Application Engineer

  • Error -200141 when doing buffered events with DAQmx and PCI-6602

    When doing buffered events with DAQmx and PCI-6602 I get error 200141 - Data was overwritten before it could be read by the system.
    This error is generated ONLY with random inputs >200/sec.
    My setup is :
    DAQmxCreateCIVCountEdges(taskhandle,"Dev1/ctr3"....
    DAQmxCG+FGSampClkTiming(taskhandle,"/Dev1/FPI35",...
    DAQmxSetCICountEgdesChan(taskhandlem,"", "/Dev1/80MHZTimeBase")
    DAQmxSetChanAttribute(taskhandlw,",",DAQmx_CI_DataXferMech,DAQmx_Val_DMA,0);
    Can somebody help ?

    i'm getting the same Error-200141, while reading semiperiods. (Meas_Buffered semiperiod continous)
    while loop ex.rate seems to be pulsewidth*no.Samples to read. in my case PW=60ms
    Input buffer size measured with Property node= 10000
    why this error happens?? i cant use any mode other than implicit timing for semi-period measurement right??
    more info: all the ai channels are used ~ 16 differencial.
    i found one solution which is _ reinitializing the whole task if an error occur. is this the right way??
    Kudos always welcome for helpful posts
    Attachments:
    Counter_1_Meas Buffered Semi-Period-Continuous_main_lv09.vi ‏34 KB
    SemiPeriod_Reconnect Counter on Error.vi ‏35 KB

  • Trying to measure voltage through 1 wire connection

    Hai ,
           I am trying to measure voltage through 1 wire connection using NI hardwares like  1)chasis SCXI-1000   2) DMM PCI- 4060, 3) MUX SCXI-1127 and 4) Terminal Block SCXI-1331. Please see a attached picture of my set up.
      I am unable to establish my connection through  1_WIRE_LO_REF .I want to use it  as my reference point (GND) through which I can measure the voltage .I think there may be problem in my design or in the labview code.Could u please verify   and suggest the appropriate one.
    Can I use 1_wire_Lo_ref is so which port to be used, actually i have six ports for this point (or) is there any altenative
     I hope u respond soon and in the affirmative
    with regards
    madhava
    Attachments:
    Scanning_of_SCXI-1127_48_write.vi ‏144 KB
    IM0000041[1].jpg ‏722 KB
    IM0000041[1]1.jpg ‏722 KB

    Hi Madhava,
    Are you unable to get the example program to work?  Are you using an Aux cable to connect the switch to the DMM or are you triggering from the connector block of the switch?
    One good resource is to open the NI-Switches Help from Start >> Programs >> National Instruments >> NI-Switch >> Documentation >> NI-Switches Help.  Go to the Search tab and search for Single Module Scanning - Handshaking.  There are sections for SCXI or PXI depending on which form factor you are using.  This will explain which triggers to use and how to connect the DMM and Switch together.
    In the same help file, if you search for Scan Lists, this will show you the proper syntax for the scan lists.  The scan list can all be listed in one text box and does not have to be an array of strings. 
    I think the best way to proceed is to take the example that I showed you save it as a new program so you can go back to the original if you need, make it work and then modify it to do what you need.  Add the write to file for example.  If you have any questions about specific issues, I can help you with those.
    Thank You,
    Nick F.
    Applications Engineer

  • Measuring voltage from thermocouples

    How do i measure voltage from a thermocouple which is joined to another one. Meaning that they have a common point. I have tried reading in a voltage from 1 point and then subtracting it with the other but it does not give me the reading the multimeter is showing

    Hello,
    For troubleshooting bad readings, probably the first thing to do would be to check the board's configuration.
    Is it configured in differential mode? Differential mode is the most recommended mode for thermocouple readings. When using differential mode, just make sure to connect the positive lead of the thermocouple to ACH0 (for example), and the negative to ACH8.
    Once you have all the signals connected to your DAQ board, try running a MAX Test Panel. I usually run it using Continuous Mode. Before starting the acquisition, check the input limits in MAX, adjust them according to the input signal so that the board applies the appropriate gain.
    Finally, create a Virtual Channel (by taking into consideration the thermocouple type). Are you re
    ading the correct temperature? Is the CJC in your terminal block enabled? It's always easier to compare the temperature than the millivolts readings.
    I hope these tips help. Good luck with your application!

  • Mouse dragged event with unexpected coordinates

    I am dragging the mouse on a half circle from the middle left to the top middle. This results in mouse events with the coordinates form (10,90) ->(100,10)
    Letting the mouse go and then dragging it further to the left, the coordinates in the of the event are similar than the starting point of the first mouse drag event.
    Can anyone shed some light on this peculiar behavior?

    First of, I have to apologize for the example not being as minimalistic as it might be, but on the plus side, I know now why this happens, I just don't know how to work around it.
    * To change this license header, choose License Headers in Project Properties.
    * To change this template file, choose Tools | Templates
    * and open the template in the editor.
    package javafxtest;
    import java.util.ArrayList;
    import javafx.application.Application;
    import javafx.beans.property.DoubleProperty;
    import javafx.beans.property.SimpleDoubleProperty;
    import javafx.event.ActionEvent;
    import javafx.event.EventHandler;
    import javafx.geometry.Dimension2D;
    import javafx.geometry.Point2D;
    import javafx.scene.Group;
    import javafx.scene.Scene;
    import javafx.scene.control.Button;
    import javafx.scene.control.Label;
    import javafx.scene.input.MouseEvent;
    import javafx.scene.layout.StackPane;
    import javafx.scene.paint.Color;
    import javafx.scene.shape.Circle;
    import javafx.scene.shape.Polygon;
    import javafx.scene.shape.Rectangle;
    import javafx.scene.shape.Shape;
    import javafx.scene.transform.Rotate;
    import javafx.stage.Stage;
    * @author andi
    public class HandleRotation extends Application {
        private DoubleProperty currentRotation;
        private ArrayList<Double> angles;
        @Override
        public void start(Stage primaryStage) {
            currentRotation = new SimpleDoubleProperty(this, "currentRotation", 10);
            SteeringWheelGroup background = new SteeringWheelGroup(200);
            background.setManaged(false);
            Group g = new Group(background);
            final Point2D centerPoint = new Point2D(100, 100);
            angles = new ArrayList<>(3);
            angles.add(190.0);
            angles.add(270.0);
            angles.add(350.0);
            double step = (180.0 - 2 * currentRotation.doubleValue()) / (angles.size() - 1);
            int radius = 100;
            final int yTranslation = 15; // might be due to the labels
            Polygon handle = createHandle(centerPoint, radius, yTranslation);
            g.getChildren().add(handle);
            StackPane root = new StackPane();
            Scene scene = new Scene(g, 300, 250);
            primaryStage.setTitle("Handle Rotation!");
            primaryStage.setScene(scene);
            primaryStage.show();
         * Calculate the base point for the label. This is the point on the arc, matching the angle.
         * @param center point of the circle
         * @param radius radius of the circle
         * @param angle in degree in [0,180]
         * @return Point on the circle
        Point2D calculateBasePoint(Point2D center, double radius,
                double angle) {
            float newX = (float) (center.getX() + radius * Math.cos(Math.toRadians(angle)));
            float newY = (float) (center.getY() + radius * Math.sin(Math.toRadians(angle)));
            return new Point2D(newX, newY);
         * Create the polygon that represents the handle
         * @param centerPoint
         * @param radius
         * @return
        private Polygon createHandle(final Point2D centerPoint, int radius, final int yTranslation) {
            double baseAngle = 180;
            Point2D p1 = calculateBasePoint(centerPoint, radius, baseAngle - 5);
            Point2D p2 = calculateBasePoint(centerPoint, radius, baseAngle + 2);
            Point2D p3 = calculateBasePoint(centerPoint, radius*0.65, baseAngle + 2);
            Point2D p4 = calculateBasePoint(centerPoint, radius*0.65, baseAngle - 7);
            double[] points = {p1.getX(), p1.getY(), p2.getX(), p2.getY(), p3.getX(), p3.getY(), p4.getX(), p4.getY()};
                      Polygon polygon = new Polygon(points);
    //        polygon.setOpacity(0);
            polygon.setTranslateY(-yTranslation);
            final Rotate rotationTransform = new Rotate(currentRotation.doubleValue(), centerPoint.getX(), centerPoint.getY());
            polygon.getTransforms().add(rotationTransform);
            polygon.setOnMouseDragged(new EventHandler<MouseEvent>() {
                @Override
                public void handle(MouseEvent event) {
                    if (event.getY() < centerPoint.getY()) {
    System.out.println("Event: "+event);                   
                                                       Point2D point = new Point2D((float)event.getX(), (float)event.getY());
                        double newAngle = angleBetween2Lines(centerPoint, point);
                        if (newAngle < 0) {
                            newAngle = (90 + newAngle)+ 90;
    System.out.println("Set angle on mouse drag: "+newAngle);
                        if (newAngle < 10) {
                            newAngle = 10;
                        if (newAngle > 170) {
                            newAngle = 170;
                        currentRotation.set(newAngle);
            polygon.setOnMouseReleased(new EventHandler<MouseEvent>() {
                @Override
                public void handle(MouseEvent event) {
                    snapToNearestAngle();
                    rotationTransform.setAngle(currentRotation.doubleValue());
            return polygon;
         * Snap to the correct angle. Correct angle is angle belonging to the nearest label.
        void snapToNearestAngle() {
            double currentAngle = currentRotation.doubleValue() + 180;
            double currentMin = 360;
            int minIndex = 0;
    System.out.println("Current rotation is "+currentAngle);
            for (int i = 0; i < angles.size(); i++) {
                double angle = angles.get(i);
                double diff = Math.abs(angle - currentAngle);
                if (diff < currentMin) {
                    currentMin = diff;
                    minIndex = i;
    System.out.println("new minDifference at "+i+": "+diff);
            Double destinationAngle = angles.get(minIndex);
    System.out.println("DestinationAngle is "+currentAngle+" -> "+(destinationAngle - 180));
            if (destinationAngle < 180 + 10 || destinationAngle > 360 - 10) {
                throw new IllegalStateException("Angle is out of range: "+currentRotation.doubleValue()+" -> "+destinationAngle);
            currentRotation.set(destinationAngle - 180);
         * Calculate the angle between the vector horizontally to the left from the center
         * and the current point.
         * @param center point
         * @param point current point
         * @return angle in degree
        double angleBetween2Lines(Point2D center, Point2D point) {
            double slope2 = calculateSlope(center, point);
            double angle = Math.atan(slope2);
            if (point.getX() > center.getX()) {
                angle += Math.PI/2;
    System.out.println("Slope: "+slope2+" angle "+Math.toDegrees(angle));
            return Math.abs(Math.toDegrees(angle));
         * Caluculate the slope of the line defined by two points.
         * The first point is the center of a circle and the second
         * point roughly lies on the circle.
         * @param center point
         * @param point on the circle
         * @return slope of the connecting line.
        double calculateSlope(Point2D center, Point2D point) {
    System.out.println("center="+center+",point="+point);       
            double absSlope = Math.abs((point.getY() - center.getY()) / (point.getX() - center.getX()));
            if (point.getY() > center.getY()) {
                if (point.getX() > center.getX()) {
                    // bottom right
                    return -absSlope;
                } else {
                    // bottom left
                    return absSlope;
            } else {
                if (point.getX() > center.getX()) {
                    // top right
                    return absSlope;
                } else {
                    // top left
                    return -absSlope;
         * The main() method is ignored in correctly deployed JavaFX application.
         * main() serves only as fallback in case the application can not be
         * launched through deployment artifacts, e.g., in IDEs with limited FX
         * support. NetBeans ignores main().
         * @param args the command line arguments
        public static void main(String[] args) {
            launch(args);
       private class SteeringWheelGroup extends Group {
            public SteeringWheelGroup(int destinationWidth) {
                int topPadding = 0;
                Rectangle rect = new Rectangle(getImageWidth(), getImageWidth(), Color.RED);
                double scale = destinationWidth / rect.getWidth();
                rect.setScaleX(scale);
                rect.setScaleY(scale);
                Circle circle = new Circle(getImageWidth()/2, getImageWidth()/2, getImageWidth()/2, Color.BLUE);
                circle.setScaleX(scale);
                circle.setScaleY(scale);
                Group rotationGroup = new Group(/*rect,*/ circle);
                rotationGroup.setManaged(false);
                int width = getImageWidth();
                Rectangle clipRectangle = new Rectangle(0, 0, width, width / 2);
                Circle clipCircle = new Circle(width / 2, width / 2, width / 2);
                Shape clip = Shape.intersect(clipRectangle, clipCircle);
                rotationGroup.setClip(clip);
                this.getChildren().add(rotationGroup);
                //double h = calculateHeigthOverHorizon(angle, destinationWidth/2);
                //setTranslateY(-h+topPadding);
            public final int getImageWidth() {
                return 479;
    Here is how you can reproduce my effect:
    Grab the black handle
    Drag the mouse top and right until you approach the angle -90 (have an eye out on the console log)
    Let the mouse go: the handle will snap to 90 degree
    Grab the handle a second time and move further right
    You will see that the angle printed out do not match what you expect.
    Let the mouse go, the Handle snaps back to it's original position
    As the rotation does not happen around the polygon's center, I have to use a Rotaion effect, which is applied. While I can drag the shape from the rotated location the dragging is always measured from its base position.
    So what can I do to work around this?
    final Rotate rotationTransform = new Rotate(currentRotation.doubleValue(), centerPoint.getX(), centerPoint.getY());
    polygon.getTransforms().add(rotationTransform);
    If worse comes to worst, I can use a circular handle covering everything, then I can rotate around its center, but I would like to avoid this.

  • Temperature Measurement using Iex Thermistor with PCI 6259

    Hello All,
    I am having some difficulty measuring temperature using MAX with Iex Thermistor setup, and would like to know if I have missed any thing important. I am using external current excited thermistor with 2 wire configuration and PCI 6259 card with MAX.
    This is a channel that was originally configured to Voltage measurement and MAX measures about 900mV from this channel OK, the voltage converts to Temperature to be around 30C. Then I added a new channel and configured it to measure temperature directly using MAX default Iex Thermistor setup. This is when the problem show up: I will get a constant -273C instead of 30C as expected when run the channel in MAX. I must have been doing something wrong here.
    Your help is greatly appreciated!
    Bryan
    Solved!
    Go to Solution.

    Hi Ravens, thank you for taking the time on this problem.  I am sure the issue was not caused by the A, B, C parameters being wrong, as when I ran the channel in MAX, I am getting a constant -273.15 value, and it was not updated as a real measurement.
    To your 2nd question, this is a case of measuring 1 thermistor value using the Iex Thermistor method vs. Voltage measurement.  If I set it up to measure Voltage directly, I can see the realtime updates of the measurement values of voltage, which converted to Temperature in my VI to be reasonable values of temperature.
    Bryan

  • Measuring voltage and temperature

    Hallo,
    I've got the problem of measuring voltage and temperature simultaneously, with diferent numbers of samples. I want to use two of the "DAQmx write", but then the error "The ressource is reserved" appears.
    Software: Labview 8.2.
    Hardware: NI cDAQ - 9172
    NI 9211 (Temperaturecard)
    NI 9201 (Voltagecard)
    How can i fix it?
    Attachments:
    Fehler.JPG ‏89 KB
    Fehlerbeispiel.vi ‏27 KB

    Hello LochiMD,
    there are sereral things you have to care about.
    The best would be, you have a look on the following link:
    Synchronize continuous Acquisition of Multiple Analog Input Devices
    https://decibel.ni.com/content/docs/DOC-12182 (Have a look on the picture, especially left side)
    You should use the VI DAQmx Timing (Sample Clock), samples per chanel and sample mode is necessary.
    If you do this, your program should work.
    Best Regards,
    Nina

  • In ical I just added new calendars to a pre-existing calendar group, I can make events with these calendars, but not reminders, any suggestions?

    in ical I just added new calendars to a pre-existing calendar group, I can make events with these calendars, but not reminders, any suggestions?

    Hi,
    Lion has changed the way reminders (todos as was) work. They now seem to need to be in a seperate calendar.
    In iCal open the File menu and select New Reminder List... and select where to put it.
    Best wishes
    John M

  • Is there a way to delete all events with the same title (not added as reoccurring) without deleting one at a time?

    i currently have a calendar synced that has events scheduled in perpetuity, scheduled as individual events.  I would like to delete all events with the same title.  I do not want to delete the entire calendar nor do I want to go into every event and delete individually.  These were not scheduled by me so I do not know how they were added one by one and go on forever but they are NOT scheduled as reoccurring and thus must be modified individually.
    I can do a search and find all events, is there a way to just delete all events with the same title all at once?
    this is a Microsoft outlook synced calendar and I am seemingly unable to delete the events all at one time from Microsoft as well. 
    Please help!

    If you still have access to the Outlook calendar in Outlook, I would delete them from there. There are a number of ways to do that, but if you open the individual event in Outlook, does it show a repeating pattern? If not, then you may have to delete them individually, but that is not that difficult either. Go into the calendar and then change the view to a list view. From there you can sort the view according to subject. This should bring all of these same appointments together in the list and you can select the group in Outlook and delete them. Once you do that, you can change your view back and then sync the phone. That will remove the events from the phone.

  • HT4890 Can I share a specific event with friends on iCloud via Photostream?

    Can I share a specific event with friends on iCloud via Photostream?

    No, not until iOS 6 comes out.

Maybe you are looking for

  • After reformatting hard drive, iPod syncs very slowly with iTunes

    A couple of months ago I had to reformat my computer's hard drive. I keep all my music files on an external hard drive. After reformatting, the man who did this for me reloaded iTunes for me and imported all my music back into my iTunes library. It s

  • [Solved]Wireless works sometimes with networkmanager

    I have posted about a similar problem before (http://bbs.archlinux.org/viewtopic.php?id=49124) and people suggested I unhide the wireless network and use a different program.  I have done that however it fixed little.  I have a broadcom card, and I u

  • Should I use only standard fonts in pdf forms?

    I am converting a lot of professional forms (contracts etc) into fillable and signable pdfs. The documents use flowering serif fonts like Book Antiqua, Garamond, etc. as this has a certain traditional elegant look for contracts but I am tempted to ch

  • Fact Table Count Problem

    When I do an SE16 on the fact table for 0CCA_C11 i come up with a number close to 175 million.   However if I add up all the records added to the cube since it was initialized, the number is around 20 million. Can anyone explain the discrepancy betwe

  • Don't want to download Firefox when it is providing access to a third party site that you must accept

    I went to download Firefox on my new computer, and I was shocked that in the license agreement, there is now a third party that will be allowed access to much of my information and share it with advertisers. I will only download Mozilla if I can do i