Motion Control and Motor Drives

cancel
Showing results for 
Search instead for 
Did you mean: 

Analog Output Terminal on Stepper Drive

Hello all,

 

My motion controller card is connected to a MID-7604/7602 Stepper Motor drive. I've got a peristaltic pump here with a 25 pin serial connection on the back, and I'd like to integrate automated pump control into an already existing VI. There's no driver for my pump, and so what I'm going to try to do is write a driver for it, using the analog output terminal on the stepper drive to wire voltages to certain pins of the serial connection on the pump.

 

Have I got this right?

 

Cheers,

 

Ryan 

0 Kudos
Message 1 of 8
(5,096 Views)

Hi Ryan,

 

I'm sorry, but I don't understand exactly what you are trying to do. First of all, the MID only routes the analog outputs from your motion control board to the connector terminals. Which motion control board are you using? My question is based on the fact, that e. g. the PCI-7330 doesn't provide analog outputs at all. Here are some more questions that should help to better understand your needs:

 

  • Is your MID connected to a stepper motor that is independent from the pump?
  • What type of serial connection is the pump using? Is this RS232 or any other type of standardized serial interface?
  • Typically serial interfaces work with digital signals, so why do you want to connect analog signals to these lines?


Sorry for my confusion. Please provide more detailed information. A datasheet of the pump would also be helpful, as well as a bigger picture of your system setup.

 

Thanks,

Jochen

Message 2 of 8
(5,089 Views)

Hi Jochen, and thanks for your help.

 

I'm using a PCI-7344 .

 

- Yes, the MID is connected to a stepper motor via the encoder and stepper motor terminal blocks, independent of the pump.

 

- Sorry, but I'm not so knowledgeable about different bus architectures. The pump is a Wilson-Marlow 205U, and a datasheet can be found here, which may answer your question.

 

-  Perhaps it's not serial then. 

 

The pump datasheet linked to above describes how to control the device remotely, by passing voltages to certain pins to do different functions. What I want to do is to write a vi that will pass these voltages to the device. Since Motion I/O port on the back of my PCI-7344 card is already taken by my MID, I thought maybe I could tell my MID to produce certain voltages on the different channels of analogue output, connected to my pump.

 

I hope it's clear what I was trying to accomplish. If this is not possible, I would appreciate any suggestions on a better way.

 

Thanks again,

 

Ryan 

0 Kudos
Message 3 of 8
(5,081 Views)

Sorry, upon examining more closely, I believe I'll have to wire digital signals to the pump.

 

I have a PCI-6035E DAQ card with several digital I/O ports that looks like it'll better suit what I'm trying to accomplish.

 

I may have just solved my own dilemma, with your help. Does this sound reasonable?

 

Cheers 

0 Kudos
Message 4 of 8
(5,078 Views)

Based on the manual, it appears that the pump is using some non-standard method of programming.  I think you are on the right track providing digital signals to the different pins of the connector.  To provide the digital signals, you can use the 6035E as you mentioned or you can use the motion controller.  To use the motion controller, you will just have to hook up a connector block (like the SCB-68) to the Digital I/O port on the controller card.

 

Which of the two you decide to use will probably depend on your familiarity with programming each.  The 6035E will use the NI-DAQmx driver whereas you will have to use the Motion I/O VIs under the NI-Motion driver if you want to use your controller card.

 

Good luck and let us know if you have any further questions!

Alex Person
NI-RIO Product Support Engineer
National Instruments
Message 5 of 8
(5,062 Views)

Thanks very much for your input. Just one more question... I've got the pump wired to DIO 0 of my DAQ card, and used the DAQ assist VI to specify that I want digital output at line 0 / port 0. Now, I'm having trouble finding the correct vi to wire up to the data input to produce a TTL high signal.

 

Thanks for all the help. 

0 Kudos
Message 6 of 8
(5,060 Views)

You won't need an actual VI to set it high.  You can use a True/False constant, a boolean control, or any boolean input to the DAQ Assistant.  The only caveat to the DAQ Assistant for DIO is that it expects an array of inputs, even for only one line. 

 

In your case, if you were to wire a True constant in to drive the line high, you would just need to place a Build Array VI between the boolean constant and the DAQ Assistant.

Alex Person
NI-RIO Product Support Engineer
National Instruments
0 Kudos
Message 7 of 8
(5,038 Views)
Everything works like a charm now. Thanks to everyone for all the help.
0 Kudos
Message 8 of 8
(5,026 Views)