Jump to content

All Activity

This stream auto-updates

  1. Past hour
  2. Today
  3. ---

    probe rotation location change

    Follow the path that David has brought up - this is the best way to handle rotations with the RDS and XTR. Typically I set it to come up in the Z, then I set a MasterProbe position after that, that is set to the middle of the machine.
  4. ---

    Probes validation

    Oh, and you can handle the issue of only selecting the ones that exist with if statements in the PCM code, and putting Conditions on the Characteristic (this will force you to run from the Characteristics side though). I took this idea below from the O-Inspect ToA measurement plan - works great! // Tip assignments for i = 1 to 5 tip_num = val(getParameterNamed(styli_ListFile, i * 2 - 1)) tip_name = getParameterNamed(styli_ListFile, i * 2) if tip_num == 1 tip1 = tip_name tip1num = 1 endif if tip_num == 2 tip2 = tip_name tip2num = 2 endif if tip_num == 3 tip3 = tip_name tip3num = 3 endif if tip_num == 4 tip4 = tip_name tip4num = 4 endif if tip_num == 5 tip5 = tip_name tip5num = 5 endif next i // Initialize stylus array for i = 1 to MAX_STYLI stylus[i] = i Styli[i] = 0 next i stylus[MAX_SELECT] = "1-10" for i = 1 to MAX_SELECT selectstylus[i] = "-" next i // Other initialization TypCMM = "" AR_stylus = getCFNames() runMode = getRunID() cncBreak = 0 l = 1 // Auto-run logic CR2 = getParameterNamed(AR_stylus, 2) CRX = "End" if CR2 == "Activate" and runMode == "Detail" for m = 1 to 11 selectstylus[m] = getParameterNamed(AR_stylus, m + 2) if selectstylus[m] == CRX selectstylus[m] = "-" m = 11 else selectstylus[m] = val(selectstylus[m]) Styli[selectstylus[m]] = 1 endif next m else selectCase runMode // Manual Detail Mode case runMode == "Detail" selectstylus[1] = inquireList("Please select the stylus you want to verify.", stylus[1], stylus[2], stylus[3], stylus[4], stylus[5], "cancel") if selectstylus[1] == "cancel" cncBreak() endif if selectstylus[1] == "1-10" for m = 1 to MAX_STYLI Styli[m] = 1 selectstylus[m] = stylus[m] next m l = MAX_SELECT endif for s = 1 to MAX_STYLI if selectstylus[1] == stylus[s] stylus[s] = "" Styli[s] = 1 endif next s m = 2 for j = 1 to 10 if cncBreak == 1 j = 10 else selectstylus[m] = inquireList("Please select the stylus you want to verify.", stylus[1], stylus[2], stylus[3], stylus[4], stylus[5], "ready", "cancel") if selectstylus[m] == "cancel" cncBreak() cncBreak = 1 j = 10 endif if selectstylus[m] == "" message("Please select a stylus, select 'ready' or select 'cancel'") j = j - 1 m = m - 1 endif if selectstylus[m] == "ready" selectstylus[m] = "-" j = 10 endif for s = 1 to MAX_STYLI if selectstylus[m] == stylus[s] Styli[s] = 1 stylus[s] = "" endif next s m = m + 1 endif next j // Run Complete Mode case runMode == "Run Complete" for m = 1 to MAX_STYLI Styli[m] = 1 selectstylus[m] = stylus[m] next m l = MAX_SELECT // Complete Mode case runMode == "Complete" for m = 1 to MAX_STYLI Styli[m] = 1 selectstylus[m] = stylus[m] next m l = MAX_SELECT endSelect endif // Disable unassigned tips if tip1num <> 1 Styli[1] = 0 endif if tip2num <> 2 Styli[2] = 0 endif if tip3num <> 3 Styli[3] = 0 endif if tip4num <> 4 Styli[4] = 0 endif if tip5num <> 5 Styli[5] = 0 endif If the tipnum does not equal 1, then the Styli[n] is set to 0. The condition on the characteristic is looking for that status of Styli[n] to equal 1; it will only run that characteristic if it equals 1.
  5. ---

    Probes validation

    //systemCall("cmd.exe /c taskkill /IM notepad.exe /F") // Constants MAX_STYLI = 10 MAX_SELECT = 11 // Reference Sphere Diameter Ref1Dia = baseSystem().machine.machineControl.sphereNormalObject.sphereRadius * 2 // Clear files deleteFile(systemFile) deleteFile(styliFile) deleteFile(correctionFile) // Stylus System selection (Sorted) probeKeys = baseSystem().machine.machineAllProbeObjects.keys.asList probeKeys.sort // Alphabetical sort (ascending) SS_List = "stylusSystem=inquireList(" + chr(34) + "Select Stylus System to Evaluate" + chr(34) for i = 1 to probeKeys.size SS_List = SS_List + "," + chr(34) + getParameterNamed(probeKeys, i) + chr(34) next i SS_List = SS_List + ")" addToFile(systemFile, SS_List) runPCMFile(systemFile) changeStylusSystem(stylusSystem) // Gather active stylus tips activeStylusTips = baseSystem().machine.machineProbeConfiguration.allProbes.values.asList styli_List = "" for i = 1 to activeStylusTips.size currentTip = getParameterNamed(activeStylusTips, i) styli_List = styli_List + currentTip.ident + cr() + currentTip.probeName + cr() next i addToFile(styliFile, styli_List) // Read stylus tip list styli_ListFile = readListFile(styliFile) // Tip assignments for i = 1 to 5 tip_num = val(getParameterNamed(styli_ListFile, i * 2 - 1)) tip_name = getParameterNamed(styli_ListFile, i * 2) if tip_num == 1 tip1 = tip_name tip1num = 1 endif if tip_num == 2 tip2 = tip_name tip2num = 2 endif if tip_num == 3 tip3 = tip_name tip3num = 3 endif if tip_num == 4 tip4 = tip_name tip4num = 4 endif if tip_num == 5 tip5 = tip_name tip5num = 5 endif next i // Initialize stylus array for i = 1 to MAX_STYLI stylus[i] = i Styli[i] = 0 next i stylus[MAX_SELECT] = "1-10" for i = 1 to MAX_SELECT selectstylus[i] = "-" next i // Other initialization TypCMM = "" AR_stylus = getCFNames() runMode = getRunID() cncBreak = 0 l = 1 // Auto-run logic CR2 = getParameterNamed(AR_stylus, 2) CRX = "End" if CR2 == "Activate" and runMode == "Detail" for m = 1 to 11 selectstylus[m] = getParameterNamed(AR_stylus, m + 2) if selectstylus[m] == CRX selectstylus[m] = "-" m = 11 else selectstylus[m] = val(selectstylus[m]) Styli[selectstylus[m]] = 1 endif next m else selectCase runMode // Manual Detail Mode case runMode == "Detail" selectstylus[1] = inquireList("Please select the stylus you want to verify.", stylus[1], stylus[2], stylus[3], stylus[4], stylus[5], "cancel") if selectstylus[1] == "cancel" cncBreak() endif if selectstylus[1] == "1-10" for m = 1 to MAX_STYLI Styli[m] = 1 selectstylus[m] = stylus[m] next m l = MAX_SELECT endif for s = 1 to MAX_STYLI if selectstylus[1] == stylus[s] stylus[s] = "" Styli[s] = 1 endif next s m = 2 for j = 1 to 10 if cncBreak == 1 j = 10 else selectstylus[m] = inquireList("Please select the stylus you want to verify.", stylus[1], stylus[2], stylus[3], stylus[4], stylus[5], "ready", "cancel") if selectstylus[m] == "cancel" cncBreak() cncBreak = 1 j = 10 endif if selectstylus[m] == "" message("Please select a stylus, select 'ready' or select 'cancel'") j = j - 1 m = m - 1 endif if selectstylus[m] == "ready" selectstylus[m] = "-" j = 10 endif for s = 1 to MAX_STYLI if selectstylus[m] == stylus[s] Styli[s] = 1 stylus[s] = "" endif next s m = m + 1 endif next j // Run Complete Mode case runMode == "Run Complete" for m = 1 to MAX_STYLI Styli[m] = 1 selectstylus[m] = stylus[m] next m l = MAX_SELECT // Complete Mode case runMode == "Complete" for m = 1 to MAX_STYLI Styli[m] = 1 selectstylus[m] = stylus[m] next m l = MAX_SELECT endSelect endif // Disable unassigned tips if tip1num <> 1 Styli[1] = 0 endif if tip2num <> 2 Styli[2] = 0 endif if tip3num <> 3 Styli[3] = 0 endif if tip4num <> 4 Styli[4] = 0 endif if tip5num <> 5 Styli[5] = 0 endif Above is the code for a Stylus Verification/Adjustment measurement plan that I built to work for standard Star Probes. It will prompt you to select the stylus system that you want to verify/adjust. I believe that the only way (other than some hidden command that is known to few) to access the styli list for a particular stylus system is to have it active first. Obviously you do not need all of my code, but there are pieces of it that will work well for you. Mainly these parts: probeKeys = baseSystem().machine.machineAllProbeObjects.keys.asList probeKeys.sort // Alphabetical sort (ascending) SS_List = "stylusSystem=inquireList(" + chr(34) + "Select Stylus System to Evaluate" + chr(34) for i = 1 to probeKeys.size SS_List = SS_List + "," + chr(34) + getParameterNamed(probeKeys, i) + chr(34) next i SS_List = SS_List + ")" addToFile(systemFile, SS_List) runPCMFile(systemFile) changeStylusSystem(stylusSystem) // Gather active stylus tips activeStylusTips = baseSystem().machine.machineProbeConfiguration.allProbes.values.asList styli_List = "" for i = 1 to activeStylusTips.size currentTip = getParameterNamed(activeStylusTips, i) styli_List = styli_List + currentTip.ident + cr() + currentTip.probeName + cr() next i addToFile(styliFile, styli_List) // Read stylus tip list styli_ListFile = readListFile(styliFile) This will build a list of all of the Stylus Systems available, prompt you to select the stylus system that you want to validate, change to that stylus system, and finally build a list of the styli available on that stylus system.
  6. Yesterday
  7. ---

    Probes validation

    I am trying to write a simplified PCM code to do the validate probe data. I have one already just trying to cut it down and make it easier. First step is to read all the data of a given probe to validate. I have a list of probes from a text file that i loop through to validate, but i want to use: //rad1=(getProbe("1",line[I]).diameter*25.4) //rad2=(getProbe("2",line[I]).diameter*25.4) //rad3=(getProbe("3",line[I]).diameter*25.4) //rad4=(getProbe("4",line[I]).diameter*25.4) //rad5=(getProbe("5",line[I]).diameter*25.4) //std1=(getProbe("1",line[I]).stdProbeDev) //std2=(getProbe("2",line[I]).stdProbeDev) //std3=(getProbe("3",line[I]).stdProbeDev) //std4=(getProbe("4",line[I]).stdProbeDev) //std5=(getProbe("5",line[I]).stdProbeDev) //px1=(getProbe("1",line[I]).probeVector.x) //px2=(getProbe("2",line[I]).probeVector.x) //px3=(getProbe("3",line[I]).probeVector.x) //px4=(getProbe("4",line[I]).probeVector.x) //px5=(getProbe("5",line[I]).probeVector.x) //py1=(getProbe("1",line[I]).probeVector.y) //py2=(getProbe("2",line[I]).probeVector.y) //py3=(getProbe("3",line[I]).probeVector.y) //py4=(getProbe("4",line[I]).probeVector.y) //py5=(getProbe("5",line[I]).probeVector.y) Problem is if the probe does not have the tip given, it will error. I am trying to find PCM code to ONLY use the tips in a given probe cofiguration. All I have found so far to do this is with the Active probe, but I am doing all this before the probes are active. The way I am doing it right now is to have a running list of each probe and tips, and only evaluate certain ones... trying to get this simplified so that with new programmers in training, it will be less to update and make errors when a new configuration is made.
  8. Last week
  9. ---

    probe rotation location change

    This might be a solution as well: Plan > Navigation > Rotate/Swivel Position...
  10. Can the header field range be changed? I'm trying to get calypso to report to a pre-existing company measurement report and I need the header field to be A1:R15.
  11. ---

    Masterprobe and Probing System Qualification program

    I'm wondering if we're talking about the same thing. I just tried using the Resources/Utilities/Probing System Qualification inside of a program to qualify the master probe/reference sphere and it definitely didn't update the reference sphere location. The probe went about 20" in -X immediately after running the qualification. I'm wondering if people are referring to using the caliper icon as being the "automatic" option. Or am I missing something?
  12. ---

    Unhandled exception: Connection can not reopen!

    Hello Samethsom, which CALYPSO Version are you running exactly? I found a BUG with the same exception, but it should be fixed with >8.0.1204. Best Regards Marcel
  13. ---

    Excel Reporting to custom template

    Hello, I am trying to create my own excel template for measurement reports, and I am having a few problems. I copied the company measurement report template into the calypso template (characteristic.xlsm) Calypso will export data to my template, but only in columns A-H. Columns to the right of column H will not have any data reported even if they have a header. Is there a way to widen the range area that calypso will search for a header in? Any help is appreciated.
  14. Hi all. Was wondering if anyone can help with this error? I constantly get it when I'm either programming or trying to run the characteristics side to generate a report. Much appreciated!
  15. Hello everyone, I am experiencing a license activation issue with ZEISS CORRELATE 2026 and would appreciate any advice or assistance. I attempted to activate the 30-day trial through ZEISS Quality Suite. The automatic activation process proceeded normally through the initial steps, but it froze at the final activation step. After waiting, I closed the application. Since then, my ZEISS account has shown the trial as already activated or used. However, when I try to launch ZEISS CORRELATE 2026, I receive the message "No license available." I also checked the License Overview section in ZEISS Quality Suite, but it is completely empty. I contacted ZEISS Support and received instructions for manual activation along with a license code. Unfortunately, entering this code results in an "Unexpected error" message. So far, I have tried: Restarting Windows and ZEISS Quality Suite. Completely uninstalling and reinstalling the software. Repeating the activation process. Attempting manual activation using the code provided by ZEISS Support. Unfortunately, none of these attempts resolved the issue. I suspect that the automatic activation was interrupted and that the license may have been registered on the server without being properly activated on my computer. Has anyone experienced a similar issue? Is there a way to reset or repair the incomplete trial activation, or clear the failed activation state without affecting other licenses? I urgently need ZEISS CORRELATE for Digital Image Correlation (DIC) analysis as part of my doctoral research. Any suggestions or guidance from ZEISS experts or other users would be greatly appreciated. Thank you for your help.
  16. ---

    probe rotation location change

    I'll attach some screenshots but first, a few general pieces of advice. 1. Turn on Bubble Help if you haven't already. That is seriously something you want to do. It's on the top toolbar under "?" → Bubble Help. That will give you a tooltip when you mouse over anything. 2. Use the built-in help system. If you're ever wondering what something will do, you can hit F1 on any page and it will take you to the internal help database with information about the specific window you're looking at. It is INCREDIBLY helpful, although you might have to click around once in a while to find exactly what you're looking for. 3. Run the machine slowly when making changes. When you're changing things, run the machine slowly and watch it. If you need it to stop, slow the speedometer down to zero, hit the red traffic light button, then make your changes and try again. Apologies if you're already familiar with all of that, but I figured it was worth mentioning. Ok some instructions Find the feature that measures fine before the crash. With the probe in a safe location right click on the feature and hit measure now. This will move your probe to the correct location and angle. After that is done double click on the feature. Click strategy. Manually move the probe to a location that would make it safe for the rotation of the next feature. Hit that highlighted button of the left that has CMM position with the last line in the strategy selected. The order you see there is the order it will run in so if your move is before the strategy, it will move measure and then crash. You can also add a clearance move after that if its helpful. Highlighted in blue. You might have to add a few more move points if it needs to move multiple times. I have a few parts where something is getting checked internally and it needs multiple move points in order to access and then backout. The window when you're done will usually look something like this. Anyway, if anyone else wants to chip in feel free to add something. I took all my classes when I was using vast and at the time I figured why would I need to listen or take notes on the indexing stuff.
  17. ---

    XXT Normal Verification Values

    That is very good advice, I have found that once as well causing a bunch of issues.
  18. ---

    probe rotation location change

    all i am trying to do is make the probe raise up in the z rotate then continue to the next feature rather than raise in the z shuttle to the next feature then rotate.
  19. ---

    probe rotation location change

    I have wondered over the years why Calypso doesn't have detection when the RDS or an XTR articulates near the +X or -X uprights. When you use Planner (Simulation), you can show the max volume which means each CMM has the ability to adjust to a working volume to calculate an articulation coordinate based on the length of a stylus.
  20. Dear All Our We team would like to inquire about a discrepancy in the nominal angle values displayed in ZEISS CALYPSO between the True Position and Features windows for Feature A2. The values displayed are as follows: True Position – Nominal Position (Angle): -21.000° Features – Nominal Angle: 339.000° Actual Angle: 339.225° We understand that -21.000° and 339.000° may represent the same angular orientation, as they differ by 360°. However, we would like to confirm whether this is the expected behavior in ZEISS CALYPSO. Could you please clarify the following points? Why does the True Position window display the nominal angle as -21.000°, while the Features window displays it as 339.000°? How do the Positive Orientation and Negative Orientation settings affect the angle definition and measurement calculation? Which angle setting should be used to ensure the True Position evaluation is correct according to the engineering drawing? Could this difference in angle representation affect the True Position calculation or measurement results?
  21. ---

    Best action to take

    If Richards approach doesnt help, you can try to restart your controller. If that doesnt help you can try to take out the sensor of the "dovetail guide" if you have a MASS compatible CMM. Unfortunately this message often means that the Sensor is damaged. Best Regards Marcel
  22. ----Englisch version below--- Guten Tag zusammen, gibt es eine Möglichkeit, eine TOP-Fehler-Auswertung über mehrere Messungen und Bauteile zu erstellen? Von Vitronic erhalte ich über CSV die Ergebnisse der Inline-Schweißnahtüberwachung. Für jede Schweißnaht steht unter anderem die Bewertung „Schweißnaht Gesamt“ = IO/NIO zur Verfügung. Ich möchte nun nicht nur einzelne Bauteile betrachten, sondern beispielsweise einen Zeitraum von zwei Wochen auswählen und daraus ermitteln: Welche Schweißnähte wurden am häufigsten mit NIO bewertet? Wie häufig trat der jeweilige Fehler im ausgewählten Zeitraum auf? Darstellung als Tabelle, absteigend nach Fehlerhäufigkeit sortiert. Ziel ist eine kompakte TOP-Fehler-Liste über alle Bauteile, sodass die aktuellen Problemschweißnähte direkt ersichtlich sind und nicht täglich mehrere Einzelprotokolle durchsucht werden müssen. Wisst ihr, ob bzw. wie sich eine solche Auswertung realisieren lässt? Viele Grüße Martin ----------------------------------------------- Hello everyone, is there a way to create a TOP error analysis across multiple measurements and parts? I receive the results from the Vitronic inline weld inspection via CSV. For each weld, the data includes the overall assessment “Weld Overall” = OK/NOK. Instead of analyzing individual parts only, I would like to select a specific period, for example the last two weeks, and determine: Which welds were rated NOK most frequently? How often did each error occur within the selected period? Can the results be displayed in a table, sorted by error frequency in descending order? The goal is to have a compact TOP error list across all parts, allowing us to immediately identify the welds currently causing the most issues without having to review multiple individual reports every day. Does anyone know whether this type of analysis is possible and, if so, how it can be implemented? Best regards, Martin
  23. ---

    XXT Sensor löst sich

    Wir hatten bevor ich die Contura übernommen habe einen Freien nicht gerade begabten Programmierer. Spät kam raus, dass er mit RDS sich gar nicht auskennt. Dort gab es mal eine Kollision wo sich der Sensor gelöst hat. Er wurde daraufhin entlassen und ich kam ins Spiel. Ist aber 4 Jahre her und seither hat sich der Sensor nie wieder gelöst.
  24. ---

    XXT Sensor löst sich

    Guten Morgen Sven, es kommt ab und zu (wenn auch selten) vor das sich die schwarze Rändelmutter löst, bzw. nicht 100% fest ist. Dies kann durch Kollisionen oder auch Vibrationen geschehen. Es fällt dann meistens auf wenn die Messergebnisse sichtlich schlechter werden. Ich würde Sie festziehen und in 1-2 Wochen nochmals gegenprüfen ob sie sich nochmals gelöst hat, wenn ja müsste man schauen ob die Mutter evtl. beschädigt ist. Wir haben das Thema ab und zu im Support ist aber eher ein seltenes Thema, fragen wir aber als Standard mit ab wenn das Fehlerbild in die Richtung geht wie du es beschrieben hast. Grüße Marcel
  25. ---

    probe rotation location change

    Seems you can have missing safety plane - which should be covered in newer versions of Calypso ( should not be empty ). If you need to move probe in one feature ( skipping part of fixture/part ) then go to strategy and place either new safety plane or non-scanning points in space.
  26. ---

    formula and point export weirdness

    So mainly those deviations can relate to vectors of touch. You base alignment will not be perfect so in every run you can touch the part in another locations, so there is first variable - another spot - another touch vector. Then you should use in formula "GetNominal" instead of "GetActual" - this can lead also to this deviation ( i did conversion and your difference is 0,1mm in Z axis )
  27. ---

    part not square to coordinate system

    Well, a few things to note: no sketch of a part no description how big is deviation in part location/rotation no info about what licences you have ( curve, FF, ... ) What you can do in Calypso is manual mode to force user to obtain a few features. You can use start alignment, RPS, loops of base alignment, is some stage you can also use curves. We have one part, which has one groove to clock a part. I did a fixture, where you clock that part by putting a rod into this groove for fixturing - after that this rod is removed and you can run program. Also you can pick someone on forum, which you want to trust and PM with more sensitive data to this problem.
  28. ---

    XXT Sensor löst sich

    Guten Morgen Zusammen, gestern als ich zur Arbeit gekommen bin, hatte ich eine Mail von der Spätschicht. Sie hatten Probleme, dass sich die Messungen von einem zum nächsten Teil extrem verschlechterten. Sie haben es erneut gemessen und es war noch schlechter. Zum Schluss haben sie noch ein ganz anderes Teil vermessen und es war genau so. Da es mehrere Sonden betraf gatte ich gleich die Maschine im verdacht. Bei genauerer Prüfung stellte ich fest, dass sich der XXT-Sensor am RDS-Kopf gelöst hat. Ich hatte gleich eine Kollision im verdacht. Allerdings hat der Ereignismonitor nichts der gleichen Aufgezeichnet. Hatte einer dieses Problem schon einmal oder ist dies bekannt? Grüße aus dem Schwarzwald
  29. ---

    XXT Normal Verification Values

    I once had a problem where the XXT sensor had come slightly loose from the RDS head. Check that the black union nut connecting the RDS to the XXT is securely tightened.
  1. Load more activity
×
×
  • Create New...