Smart Mass Air Flow Reader (Aerospace)

Hello,

I am new to Arduino but I believe this could offer me a perfect solution for this project.

Boeing is requesting a "smart" flow tester from us to test coolant flow in their tools, we already have a Omega A2317 MAF Reader which has an Output signal: Linear 0 to 5 Vdc, 1000 Ω min load, 4 to 20 mA, 500 Ω loop resistance.

We would like to monitor this output and, depending on tool diameter and length, illuminate a red or green light (pass/fail).

Unfortunately, Omega does not provide the linear graphs for voltage output corresponding to flow, so it would have to be taught.

This requires a keypad for input, a monitor (or a touch screen and eliminate the keypad) lights, and a searchable table of the correct flows for the range of our tools which they use.

Thanks for the help,

Zac

Have you wired the gizmo up, passed air thru it, and measured the gizmo output with a multimeter?

Hi, if you have a 0 to 50SLM meter then 0 to 5V or 4 to 20mA, would represent 0 to 50SLM.

Tom..... :slight_smile:

coolant is usually a liquid. this is a gas only sensor. clean gas, lab quality clean, not room air type gas.

the specs for the device says it has a linear output. there are no curves.

any simple DIN controller can be used to display a flow in your engineering units and alarm at any points you want.

it would seem that coolant temp entering the tool would be simple.
coolant temp as it exits the tools would be valuable to indicate what is happening at the tool.

Thanks everyone for your responses,

Allow me to clarify. We make tooling for composite and aerospace applications. While the tools flow a liquid coolant-through during regular use, we test the flow by measuring the amount of air the tool can flow using the MAF.

A tool with a specific diameter and length will have a minimum flow amount, but can still vary above the minimum. We dont care about the variance as long as it is above the minimum. I would like, based on a programmed chart of minimums, per tool diameter and length, to display a light if that tool "clears" the minimum flow level.

Would an Uno R3 be able to accomplish this? Does it have enough capacity to hold the linear voltage chart, a chart for minimums based on length and diameter, and be able to compare them and return a result in the form of turning a green light on for good and a red light for bad?

An Uno should be able to do it. If there's a large number of possible tools, you might need to store the tool data in progmem to avoid running out of RAM.

Zac_Jarrell:
Would an Uno R3 be able to accomplish this? Does it have enough capacity to hold the linear voltage chart, a chart for minimums based on length and diameter, and be able to compare them and return a result in the form of turning a green light on for good and a red light for bad?

That all depends on how many tools you want in your chart.

If you just had one possible diameter and tool length then obviously you'd only have one value to store. So you need to decide how many possible diameters and tool lengths you want to keep in your table. Multiply these two factors together and you'll get the number of "pass" figures you need to store. Decide what resolution you want to use to store the "pass" figure and that tells you the data width for each entry in the table.

I'd imagine that you'll find the uno WELL capable of your demands.

sounds like you could set a pressure, then monitor the flow at that pressure.

each tool would need to be calculated for a value. could be any arbitrary engineering units.

then you insert the tool. turn on the machine, pressure build to exact pressure setting, flow rate commences and is displayed along with the engineering unit. call it the ZAC scale. 0 to 1,000. zero being no flow, 1,000 being maximum.

if tool X-136-b were to have an engineering unit of ZAC-437 and the flow were 438, then it would pass.

it seems that two tools over wildly different characteristics might have the same value.

if you have tiny tools and huge tools, you could use the ZAC-A scale or the ZAC-B scale.

testing could be very fast and you could make dozens of these and have one central calibration unit. or send them back to the factory for calibration.

dave-in-nj:
then you insert the tool. turn on the machine, pressure build to exact pressure setting, flow rate commences and is displayed along with the engineering unit. call it the ZAC scale. 0 to 1,000. zero being no flow, 1,000 being maximum.

wow, reminds me of my old friend Stan. he was doing something similar, but with force and pressure and springs and such.
I wonder how old Rocky is doing these days.......

Thanks for the info Dave,

So we already know what each tool based on diameter and length will roughly flow in SFM (0-50)

Flow Chart

Would this require an Array or a Table?

const char toolDType[][6] =
 {"0.165","3/16","1/4","5/16","4/8","7/16","1/2"};
const char toolLType[][8] =
 {"<3.6", "3.6-5.5", "5.6-6.5", ">6.5"};
const int flowRate[][4]=
  { 5, -1, -1, -1,
    6,  5,  4, -1,
   16,  9,  6,  5,
   20, 18, 11, 10,
   28, 25, 22, 22,
   -1, 35, 26, 24,
   -1, 40, 35, 32};

int minFlowRate(int diameterType,int lengthType)
{ 
return flowRate [diameterType][lengthType];
}

Thanks everyone for your help with this project and going above and beyond in posting the code for the chart I'll need.

Unfortunately, as a newcomer to C+ programming and Arduino, the above post is fairly out of context for me.

Could you recommend some resources to get me up to speed?

I assume you'll want some kind of user input and a display. Do you have this worked out yet? Writing the code should be pretty simple for anyone with a knowledge of C but you may find that learning the language will be a steep learning curve.

Have you even got the UNO yet?

for the basic starter, just get input and output.

start with the analog input and serial output on your PC.

both are baby steps and easily started with the examples on the Arduiono software.

scale your input for 1-1000 and display the value found.

once you can output the value, you would want to connect a display and a red and green LED. at this point, tiny LED's would be fine.

since this is project guidance, we are still in the right place.

once you have the input, the output and some lights blinking, you have the fundamental parts done.

Since you said Boeing, I would assume that each tool has a serial number, maybe a bar code.

I would think that one would scan the bar-code, or put in the serial number and data log the date, time and results.

At that point you should post on software to get the guru's over there to guide you on that part.

as for hardware, the question of ifyou want a stand alone, a stand alone with data reporting to a service. or just an extension of a PC connnected unit.

I can see that Boeing, would want to track a tool over time. if a tool had read Zac scale of 433 3 times in a row, then a ZAC-365. something changed. the tool may still pass, but should checked. something may be wrong.

Murpheys law says that a device in a start of disrepair, left alone, will tend to get worse.

KenF:
I assume you'll want some kind of user input and a display. Do you have this worked out yet? Writing the code should be pretty simple for anyone with a knowledge of C but you may find that learning the language will be a steep learning curve.

Have you even got the UNO yet?

I have submitted the purchase request and it has been approved, so if it hasn't been ordered, it will be and probably arrive sometime this week.

Dave,

Thankfully Boeing isn't asking anything that complicated, although if we delivered that, they might have to find a new pair of socks.

Think of it as a station that would be in the production facility on a cart, where there are many different diameters and lengths of tools at play. Operator 192 notices poor hole finish/too little coolant flowing, he runs the tool over to the cart, enters the diameter and length, holds the tool to the rubber base, and the cart gives him a red light or a green light on flow. No serial numbers or scheduled checks will be done using this machine.

As for the input, I was thinking a USB keypad would work fine.

The display would first ask for Diameter, The diameter options are already set so entering 1 could = 0.165 diameter, 2 = 0.190, ect ect, then

After hitting enter, the display would ask for Length, and enter 1-4 the same way, hit enter, and the arduino should know which cell to look at.

Then turn on the air (so a solenoid would be required), hold the tool to the flow tester, the Arduino would sample the input from the maf after 15 seconds (MAF takes a bit to normalize), then if the result was > than the cell it found based on the inputs, it would turn on a green light. Visa versa for red.

This is our current prototype setup, but its not smart in any way. You have to manually match the numbers that it displays to the chart.

Zac_Jarrell:
As for the input, I was thinking a USB keypad would work fine.

No it won't. Not unless that is connected to a computer and the computer is connected to the UNO.

You see the UNO is a SLAVE USB device, Which means it can talk to a computer as the computer is a HOST. A USB keyboard is also a slave device. If you connect two slave devices together they just can't talk to each other.

If you're going to use the UNO without a computer you need to look at getting something else organised as a keypad. There are plenty of choices though. Alternatively you could get a display with a touch sensitive screen, then you could build a menu driven user input.

The choice is yours

I was concerned of that possibility.

Touch Screen sounds good to me!

Zac_Jarrell:
I was concerned of that possibility.

Touch Screen sounds good to me!

That's the way I'd go. Much easier to build an enclosure when you don't have to worry about fiddly buttons or a separate keyboard matrix. No external keypad to get tugged.

Yeah, in the end I want the entire Omega MAF hidden and just have the touch screen and the rubber test point visible.

Does the Arduino have a GPU, or enough power to run the UI I would need?