Jump to content

Looking for a solution with PCM :)


---
 Share

Recommended Posts

Hello my Zeiss friends,

my name is Carsten and I am the new guy in here. I'm living and working in Germany with mostly Zeiss Prismos with the Calypso version of 6.4.

Short explanation, I am looking for a solution to create a more less Automated process, perhaps its not possible, I didn't find till now any proper solution to get it working.

So, my idea:

I have a Basic program which is running for example 10 minutes, which is to long, but to do a proper inspection its needed.
I want now separate the program with PCM in 2 Parts.

1 x Complete measure program approx. 10min
1 x Half measure program approx. 5min (only really important features)

I would like to create an Text File, where I can write some sequence numbers (1, 3, 5, 10..) and the measure program always calls before the start this text file and I checking if its matching with the sequence numbers.

For example: If no. 1 is available, then measure the complete program. If no. 1 is not available, then use the have program.

My tries 1: Doesn't get it working.

with getRecordHead("partnbinc") you are able to read the part number which is entered on the printout header data.
with readListFile("File.txt") im able to read the numbers, but now I really had no idea how to compare, or make the machine it recognize.

if getRecordHead("partnbinc") == readListFile("File.txt") then
message("Test 1-2-3",cr(),"Was only a try to see if it recognize, for sure here should be no box")
endif

My tries 2: Got it working with PCM Mini-Plan, but this is not really what I want 🙁

WINDOW = inquireList("Program Quick or Detail","Quick","Detail","Complete")
if WINDOW == "Quick" then
setRunID("MP_TEST_1")
endif
if WINDOW == "Detail" then
setRunID("MP_TEST_2")
endif
if WINDOW == "Complete" then
setRunID("COMPLETE")
endif

This is working, but then you get a text box after the forced input window, but I really would like to skip this message box otherwise the people will complain again hehe.

Would be really Helpful for me if somebody would have an idea.

Thanks in advance,
Link to comment
Share on other sites

My first thought was to use miniplans, but you said that doesn't work for you......
I don't know what kind of features you are measuring, but holes can be measured / not measured using "missing bore".
I haven't set one up in probably 7 years, so im no help with that, but one of the things i remember not liking was that it put a "Item not found, missing" in the final report. i was never happy about that going to the customer.
Link to comment
Share on other sites

Hello,

Thank you very much for your answer. Yeah, mini-plans is working as I wrote in my second try, but to be honest its not what I like, this would be really the worst case if I didn't find any other solution 🙂

Im sorry for the missing information, but its not only bores, so the missing bore can also not be used 🙁 As its really everything, Diameter, Planes, Cones, Distances, some times also a curve.
So to separate the Program like with Mini-Plan is already a good idea, but I would like that the operator don't has to think about when they measure a complete part and when its only a quick measurement. 🙂

Yeah, I can imagine, that this looks in the report always not really professional.

Thanks for your support.
Link to comment
Share on other sites

Please sign in to view this quote.

This won't work, because readListFile() creates a special "list" object, which is not just a simple string. So you can't just compare it with "==".
What you can do however, is this:
myvariable=readListFile("File.txt")
for x = 1 to myvariable.size
mylistitem = getParameterNamed(myvariable, x)
	if mylistitem == <whatever> then
		<do something useful>
	endif 
next x
'File.txt' must contain your sequence numbers in separate lines. The term 'myvariable.size' gets the length of the list (number of lines) so the loop doesn't read past the end. Combining this with addCF(), as Eric suggested, should get you going.
Link to comment
Share on other sites

OMG I love you guys, its working like charm =)

I entered just for testing 1, 3, 5 and 1 was measured complete, no 2 not and 3 again complete.
Exactly what I am looking for 🙂

Just before, I still used SetRunID("MiniPlan"), but with Groups SetCF("Alignment f.e.") is also working like charm =)
myvariable=readListFile("File.txt")
for x = 1 to myvariable.size
mylistitem = getParameterNamed(myvariable, x)
	if mylistitem == getRecordHead("partnbinc") then
		setRunID("COMPLETE")
	endif 
next x
Thank you very much for this awesome piece of code 🙂
Link to comment
Share on other sites

  • 5 months later...
create two listfiles with "exportCharacteristicsHierarchy()" with that characteristics you want.
then:

Var = inquireList("Bitte Ablauf wahlen", "Liste 1", "Liste 2")
selectCase Var
case "Liste 1"
setCF(readListFile("Liste 1.txt"))
case "Liste 2"
setCF(readListFile("Liste 2.txt"))
endSelect
Link to comment
Share on other sites

 Share

×
×
  • Create New...