All Activity
- Past hour
-
[Mo...] joined the community -
[Gr...] started following Micura - Can't enable drives.
-
Got a bit of a head scratcher on my hands. My Zeiss Micura was working fine on Friday and refuses to operate today after being left on all weekend. The status log does not have any enlightening information. On the control box, the only relevant symbol is an inverted triangle with an exclamation point in it. The drives on the device refuse to engage. I press the "M" button on the control box, I hear the button click followed by a rapid click-click of a relay inside the control box. The drives do not engage, and the light above the "M" does not flash or come on. It's got 5.1 bar of Nitrogen being delivered to the machine, so it's not air pressure. I can also hear the air system power up when I unlock the joysticks, and power down 15 minutes later. The head and bridge are not on the limit switches and are sitting about the middle of the machine. The PC connects with the CMM, as I can see the XY coordinates change as the bridge is gently pushed in the XY directions. I swapped the control box with another Micura we have, and the issue persists on the original machine. What should I check next? Is there a way to find out which sensor is stopping the drive?
-
I am having a hard time selling our engineers on using radius gauges as checks. Any advice? We are fighting so many "bad" small radiuses that it would resolve..... Our engineers are afraid a sharp spike of metal is going to jut out of the center of the radius and ruin their clearance. (But isnt that the exact sort of thing a radius gauge would resolve?)
-
Thank you! I appreciate so much when people take the time to share detailed solutions like this. I am filing this one away for the future!
- Today
-
Programmable Stop using "User Information", as an image.
[DC...] replied to [Ri...] 's topic in General
Sometimes you need fresh eyes on a problem. 🧐 -
When I had issues similar to this (with a VAST XXT) what I discovered after months of trouble shooting was the sensor adapter plate was the culprit but this was happening over multiple programs and seemingly random frequency. Turns out one of the contact balls on the plate was coming more and more loose over time but I had no way of knowing that until one day it just fell out. I replaced the sensor adapter plate and I haven't had the issue repeat at all. If you aren't having luck with other fixes replacing that may be worth a shot.
-
Programmable Stop using "User Information", as an image.
[Ri...] replied to [Ri...] 's topic in General
Ive stared at this 10 or more times...🫤 -
Programmable Stop using "User Information", as an image.
[Lu...] replied to [Ri...] 's topic in General
Hi richard i i just tested and is working now with the .bat file the only thing you need reconfigure each program but after if you move the program the user information button will work or any programable stop with the .bat files you use. please see the file attached Zeiss User instructions.txt -
Programmable Stop using "User Information", as an image.
[Lu...] replied to [Ri...] 's topic in General
hi richard, you are rigth, i just tested and the link is broken so teh instruction dont show anymore im trying find a way with chat gpt it seems with PCM license is possible to open the instructions even if you move the path. without it seems that maybe can work with .Bat file.. please check this link... https://www.victoryprogramming.com/post/calypso-tip-16-how-to-add-setup-instructions i will test in my side if you find a solution please share -
Programmable Stop using "User Information", as an image.
[DC...] replied to [Ri...] 's topic in General
-
Thanks i will try.. this kind of things sucks we should have acess for all knowledge data base and not for region
-
Programmable Stop using "User Information", as an image.
[Lu...] replied to [Ri...] 's topic in General
hi richard i use the images or word files that contain instructions inside the program, so when the program moves the path should remaisn the same.. -
I haven't been able to figure this out. I have a bunch of Program Stops for user interaction and I used images to show where the activity should occur. The images will no longer display at run time after a program name change. The path is correct. The name of the file is correct. The file exists in the path. But Calypso says it's not there. For testing. I copy/pasted the feature. I opened the program stop and reselected the image to display. Now it works in the new feature (name is slightly different. Original feature name: Cylinder 1277 10-C3. New test feature name: Cylinder 1277 10-C4. Do I have to manually edit each feature?
-
[Na...] started following Mesh to Mesh Report and alignment structure
-
Mesh to Mesh Report and alignment structure
[Na...] replied to [Jo...] 's topic in General Discussion
Hello John, your project structure is not suited for this task. You added another mesh to the same part. Reference Mesh should be declared as pseudo CAD, then a second mesh can be added to the part. The current structure is when you want to work with several mesh candidates, for example to find the best fitting door to a frame. Then the proposed workflow by @DWC and @Martin Jánský should work. Following parts could also be added as a stage. A stage project also supports comparison between stages. Nanno -
Mesh to Mesh Report and alignment structure
[Ma...] replied to [Jo...] 's topic in General Discussion
First of all - use CAD model and at least prealignment before exporting mesh - this will force current mesh to somewhat same place. Now you can use that mesh as CAD and it will almost always have the same position. -
You login to portal.zeiss.com Go to profile and edit your location to USA -> save Now logout and login again. Now you should have knowledge base available.
-
can anyone describe the process here when i go to knowledge base article the page is not found im on switzerland
-
Well you can mesure allways a cylinder and align and create a prependicular plane therorical from the measured cylindr, but you need allwazs a point to create a origin for one of the axis
-
@MeetLabo1 HDB What does the error log look like from the X-COM utility?
-
[B....] joined the community -
Mesh to Mesh Report and alignment structure
[DW...] replied to [Jo...] 's topic in General Discussion
@John HEfner You can absolutely use a CAD for part alignment (not deviation) if you follow the directions in the previous post. It looks and sounds like you are trying to use the fixture to keep the location the same from part to part, which is not going to work. You need to have a single source of truth for every part location and that would be to have a separate program as mentioned above. When you export the parts after alignment, they stay in that exact alignment. So when you bring the 1st, 50, 1000 parts into your other template, they would already be aligned each other and your flags would always calculate. You can still do your reference STL to CAD like you do now. The difference being you aren't chasing an alignment and hoping the fixture keeps everything in the same spot. From your screenshot, you would use the editor under the "Scripting" menu. I use a different version than you do but the concept is the same. You can hit the record button for a new Python script and then do whatever is normal to your workflow and then end the recording. You will see a bunch of code that was generated for each thing you did. This is basically allowing you to "look under the hood" at the actual language that is doing the things you are doing graphically (this drop down menu, selecting this thing, pushing this button, etc). From there you can tweak the code (use AI to help you understand by copy/pasting the script into an LLM and ask for explanation and commenting). Once your script is functional and polished, you can just go to that script and hit execute and everything happens line by line. Here is a custom script I made for maintaining part traceability when scanning lots of parts. It prompts the user with a couple of questions, and then you click on the part and it separates that part from the big lot, renames it with the sample number, increments by one, and then exports everything at the end (calculated from the prompts). import gom import tkinter as tk from tkinter import simpledialog, messagebox # Constants EXPORT_DIRECTORY = 'PUT YOUR EXPORT DIRECTORY HERE' def create_option_dialog(title, prompt, options): """Display a dialog to select an option using radio buttons.""" root = tk.Tk() root.withdraw() # Hide the root window selected_option = tk.StringVar(value=options[0]) dialog = tk.Toplevel(root) dialog.title(title) tk.Label(dialog, text=prompt).pack(pady=10) for option in options: rb = tk.Radiobutton(dialog, text=option, variable=selected_option, value=option) rb.pack(anchor=tk.W) tk.Button(dialog, text="Confirm", command=dialog.destroy).pack(pady=10) root.wait_window(dialog) # Wait for the dialog to close return selected_option.get() def get_user_input(title, prompt): """Display a dialog to get user input.""" root = tk.Tk() root.withdraw() # Hide the root window user_input = simpledialog.askstring(title=title, prompt=prompt) return user_input def get_validated_int_input(title, prompt): """Get and validate integer input from the user.""" while True: user_input = get_user_input(title, prompt) if user_input is None: return None # User cancelled try: return int(user_input) except ValueError: messagebox.showerror("Invalid Input", "Please enter a valid integer.") def copy_and_edit_part(file_name): """Copy and edit the selected part.""" try: gom.script.cad.copy_selected_points(select_points_in_copy=True) gom.script.sys.edit_properties(data=[gom.app.project.clipboard.actual_elements['Combined_Mesh_copy']], elem_name=file_name) gom.script.selection3d.deselect_all() messagebox.showinfo("Part Number", f"The assigned part number is: {file_name}") # Notify user of the assigned number except Exception as e: print(f"Error processing part {file_name}: {str(e)}") return False return True def main(): """Main function to execute the mesh processing.""" # Hide the root window before showing the message box root = tk.Tk() root.withdraw() # Hide the root window messagebox.showinfo("Patch Selection", "Please select the first patch to begin numbering.") total_parts = get_validated_int_input("How many parts total are in this scan?", "How many parts total are in this scan?") if total_parts is None: print("User cancelled operation.") return total_parts1 = get_validated_int_input("What is the number of the first sample in this scan?", "What is the number of the first sample in this scan:") if total_parts1 is None: print("User cancelled operation.") return total_parts2 = total_parts + total_parts1 # Get STL output unit stl_output = create_option_dialog("STL Output Unit", "Select STL output unit:", ["inch", "mm"]) # Edit properties for parts try: gom.script.sys.edit_properties(data=[gom.app.project.parts['Part 1'].actual], elem_name='Combined_Mesh') gom.script.sys.edit_properties(data=[gom.app.project.parts['Part 1']], elem_name='Part') except Exception as e: print(f"Error editing properties: {str(e)}") return # Processing parts for n in range(total_parts): gom.script.cad.show_element(elements=[gom.app.project.parts['Part'].actual]) user_input1 = total_parts1 + n # Automatically increment user_input1 file_name = str(user_input1) if not copy_and_edit_part(file_name): return # Exporting and processing remaining parts for n in range(total_parts1, total_parts2): try: gom.script.part.create_new_part(name=f'Part {n}') gom.script.part.add_elements_to_part(elements=[gom.app.project.clipboard.actual_elements[str(n)]], import_mode='new_elements', part=gom.app.project.parts[f'Part {n}']) gom.script.sys.export_stl(bgr_coding=False, binary=True, color=False, directory=EXPORT_DIRECTORY, elements=gom.ElementSelection( {'category': ['key', 'elements', 'part', gom.app.project.parts[f'Part {n}'], 'explorer_category', 'actual_part']}), export_in_one_file=False, export_stages_mode='current', length_unit=stl_output, set_stl_color_bit=False) except Exception as e: print(f"Error exporting STL for Part {n}: {str(e)}") return # Deselect all before the final message gom.script.selection3d.deselect_all() # Successful completion message messagebox.showinfo("Success", "All parts have been processed and exported successfully!") print("All processing completed successfully.") # Cleanly exit after the user clicks OK root.quit() # Exit the Tkinter main loop root.destroy() # Destroy the Tkinter root window and clean up sys.exit(0) # Cleanly exit the script with a success status if __name__ == "__main__": main() -
Special button in alignment window - add rotation.
-
[Ch...] joined the community -
Mesh to Mesh Report and alignment structure
[Jo...] replied to [Jo...] 's topic in General Discussion
@DWC Our workflow has us comparing scans of previous coating, to the current coating and we derive a deviation as our coating thickness. Since my "cad" or reference is the previous scan, I cannot use a general Cad model of the part for alignment and deviation. I take the previous coating scan and turn that into my reference mesh or cad body. First photo is the previous scan and the next is the current scan. I am assuming it an alignment problem on my master scanning program. Both Scans came from the same program, same fixture etc. My frustrations was from when I would convert my reference scan into CAD, it would get offset from my deviation markers. Although now I believe that the alignment or original coordinate system changes. If you wouldn't mind, where could I see examples of those python scripts? Thanks, -
@Monika Toth It has been quite a while since I have been in the PiWeb editor, but I do believe there is some information either in Calypso's help file or PiWeb's help file that runs through adding a button and defining the function of the button in a custom PiWeb report template. Biggest challenge is making sure your code syntax is correct.
-
I use a 30mm sphere for Ø0.5mm styli on our Micuras. You need a minimum LE of 15mm. 🤷♂️
