[Za...] Posted April 2, 2019 Share Posted April 2, 2019 Hi colleges, can some body help me. I want to create list of all stylus systems thich used in measurment plan, know some body easy way to do it? Link to comment Share on other sites More sharing options...
[De...] Posted April 4, 2019 Share Posted April 4, 2019 I don't know of any way of doing this purely via PCM. When I needed something for this purpose I created a command line program that looks in its current directory for a file named inspectionDir.txt and reads the directory name within. Using the directory provided, it then opens the file named "inspection" which is located inside the directory listed in inspectionDir.txt and parses the file to find all the probes which are used. It then creates a list of probes in another file inside its directory named probeList.txt which contains all the probes which are used in the program it parsed. Because it is command line based and looks for a known filenames, it is possible to create/modify the file inspectionDir.txt and then call the program with systemcallwithwait and let it do its thing, then read the probelist file in and do whatever you want with it. It is fairly simple to make something that gets a list of the probes, however you need to do something to remove duplicates as the probes are listed for each feature. One additional problem that will likely arise is that some 'features' have a probe listed even though they do not in fact ever get measured - so the list you build might end up including probes that aren't in fact in the program anymore. I handled this by writing additional code to find the listing for the probe which is 'actually' used to measure the feature. I would include my program, however once in a great while it includes a trailing apostrophe in the probe name which I have not had time to fix yet. Link to comment Share on other sites More sharing options...
[Er...] Posted April 4, 2019 Share Posted April 4, 2019 You haven't had time to remove the singe quote? 🙄 variable=%varable:'=% How ever, it's doable with pcm, I did it for someone who asked a while ago. I'll see if I can find it somewhere in my highly unorginized outlook archive tomorrow if I get some spare time. Link to comment Share on other sites More sharing options...
[De...] Posted April 4, 2019 Share Posted April 4, 2019 OK .. I now realize I could easily remove the apostrophe when its there, but not so easily modify the parsing of the file so it never gets the extra apostrophe to begin with. Honestly when I was posting this was the first time it crossed my mind that I could have just cheated and removed the trailing apostrophe if it was there. Up till then I was thinking what a load of work it was going to be to figure out what was breaking my parsing and fix it. Anyhow aside from all of that .. I wouldn't mind giving my program out, but I don't particularly want everyone relying on my code and being out of luck if I do not update it when or if Zeiss breaks it when they inevitably modify the file structure in the 'inspection' file. Link to comment Share on other sites More sharing options...
[Er...] Posted April 8, 2019 Share Posted April 8, 2019 Couldn't find it, so I had to re-write it. Not sure if it works 100% with all elements etc, (barley tested at all). Had a lot of other stuff to do. additionalPrintout="on" noOfDecimals=4 for i = 1 to baseSystem().machine.inspection.measElementsAll.size elementName=getParameterNamed(baseSystem().machine.inspection.measElementsAll.asArray,i).identifier.asString if getNominal(elementName).isConstructedResult <> true if getNominal(elementName).measElement.technology.isStrategy <> false if getNominal(elementName).measElement.technology.segments.size > 1 display("-------------------------------------"+cr()+elementName+" is measured with:") for j = 1 to getNominal(elementName).measElement.technology.segments.size if getParameterNamed(getNominal(elementName).measElement.technology.segments,j).identifier.size == 1 utfall=getParameterNamed(getNominal(elementName).measElement.technology.segments,j).identifier utfall=utfall.sort else utfall=getParameterNamed(getNominal(elementName).measElement.technology.segments,j).identifier.asString utfall=utfall.sort endif selectCase utfall.asString case is == "MOPS" display("Nr: "+getParameterNamed(getNominal(elementName).measElement.technology.segments,j).probe+" Name: "+getParameterNamed(getNominal(elementName).measElement.technology.segments,j).probeName+"(CMM POS)") case is == "..CMMMOOSSTZaceeefissty" display("Config: "+getParameterNamed(getNominal(elementName).measElement.technology.segments,j).probeConfiguration) config=getParameterNamed(getNominal(elementName).measElement.technology.segments,j).probeConfiguration case is == "..CMMMOOPRSTZceeiossst" //Ignore RT-Position case is == "..CMMMOORSSTZceeeipsstt" //Ignore RT-Step case is == "..CMMMOOPSSTZceegiooprsst" //Ignore programmable stop caseElse if additionalPrintout == "on" styliInfo=" - s: "+formatL(getProbe(getParameterNamed(getNominal(elementName).measElement.technology.segments,j).probeName,config).stdProbeDev,0,noOfDecimals)+" / Ø:"+formatL(getProbe(getParameterNamed(getNominal(elementName).measElement.technology.segments,j).probeName,config).diameter,0,noOfDecimals)+" / "+getProbe(getParameterNamed(getNominal(elementName).measElement.technology.segments,j).probeName,config).probeDate else styliInfo="" endif display("Nr: "+getParameterNamed(getNominal(elementName).measElement.technology.segments,j).probe+" Name: "+getParameterNamed(getNominal(elementName).measElement.technology.segments,j).probeName+styliInfo) endSelect next j endif endif endif next i clearParameter() Don't ask about the wired sorting, I can explain that another time, how ever, DO NOT "un-variable" that. The one called "utfall" 😃 Link to comment Share on other sites More sharing options...
[Za...] Posted April 9, 2019 Author Share Posted April 9, 2019 As I see easier way is use external soft. Now i develop utility with will: 1. Create list of stylus by analyse inspection file 2. Save information about number of stylus, elements, characteristic in program and time of simulation 3. By time of simulation of this program and data about real time of measurement of last programs calculate expected time. Model of calculation will be periodically updated, now it give time ±2 minutes Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in