Custom Simple Gscreen Skin - Need help linking values
As persel8 said, the built in skins usually call functions that are builtin to gscreen's main body of code. for instance the call update_feed_speed_label(self) calls code in gscreen.py :
you could copy this code into your handler file, and modify it to suit.def update_feed_speed_label(self): data = self.data.velocity if self.data.IPR_mode: try: data = data/abs(self.halcomp["spindle-readout-in"]) except: data = 0 if self.data.dro_units == self.data._MM: text = "%.2f"% (data) else: text = "%.3f"% (data) self.widgets.active_feed_speed_label.set_label("F%s S%s V%s"% (self.data.active_feed_command, self.data.active_spindle_command,text))
I guess I should add more docs for Gscreen....
Chris M
Chris,
Thank You. This appears to be what I was looking for. I will work on this tonight of re-creating this function in the handler file and see where I get.
Adam,
Very, very nice machine interface !! Quality !! Was this Haas out of factory or self made together?
I see on the picture that your machine is in progress.
Thank You very much. This is something Ive put alot of thought into over the past year and hope some day may be a viable product to fill the void in the market of physical interfaces for machines. I have designed all the entire console from the printing on the custom keys to the circuit boards and mechanical layout of the system.
My machine is always in progress, but is also use for profit. It functions very well but im always improving it.
Really nice inteface module you have built there. Where is the keyboard from?
Mark
The keyboard is my own design, based on alot of research of real machine control interfaces during trade shows and open houses.
Haas has inspired me alot, as well as Matsurra and Mazak, and I wanted the whole thing to be classy like Celos.
I will report back how I make out with the custom code.
-Adam
Please Log in or Create an account to join the conversation.
Mark
Please Log in or Create an account to join the conversation.
Has any one noticed the amount of new videos about QT popping out on youtube ?
Grotius is right, how long till it goes proprietary and we end up with..............<<add comment here !
Personally, i like what can be done with it, i do not like how it does it. It is reminding me of the time the "visual basic" came out, everyone was singing praises about it, i took a loot at how it works and never used it, still hate it. The others hated with a bit of delay !
I don't watch videos much due to limited bandwidth on satellite...
I feel that way about F360 due to the "Cloud" part of that software. Once you have PyQt on your PC I don't think "they" can do much about changing the status of your PC. But yea "they" could pull the plug on new development at some point but that does not make much sense.
JT
Please Log in or Create an account to join the conversation.
I need to do some more refining and a bunch of cleanup to the handler file but its almost done.
I was able to link up the values I needed to get spindle rpm, feedrate and current velocity, and current tool diameter from the tool table to calculate surface speed and chipload per rev. However, I think how im getting the data from the tooledit widget is causing an issue and not letting me edit tools in the table.
Also, im trying to understand what emcstat is. I cant seem to find much documentation of this but It seems this is part of linuxcnc and not gscreen...
Im still having trouble getting some labels to justify how I want, Like the Status section showing the overrides percentage. Im trying to get the labels right justified while the value label is left justified so all the :'s align but no luck yet. I think im getting a handle on the expand and fill packing options now which is a bit confusion.
Currently the override sliders are temporary filling the extra space.
Mark,
If you check out my Instagram, it has a number of pictures as ive been working through this console design.
The system uses 4 custom PCB's to connect the console keys to a motherboard which also has a connector for the 7i73 Mesa Pendant board.
www.instagram.com/mhmmachineworks/
-Adam
Attachments:
Please Log in or Create an account to join the conversation.
probably what you meant by emcstat
Chris M
Please Log in or Create an account to join the conversation.
I am finally over to QT. I had so many problem's with Glade in C. Even connecting a simple scrollbar in c tooked me over day's to find out. In QT i got it in 5 minutes. But in combination with C++. Okey no problem i learn also C++.
Thank You very much. This is something Ive put alot of thought into over the past year and hope some day may be a viable product to fill the void in the market of physical interfaces for machines. I have designed all the entire console from the printing on the custom keys to the circuit boards and mechanical layout of the system.
You are very clever i mentioned before. I hope your efforts and scratch project input time will bring you luck in your further proces of development. I am really impressed by your machine interface at the first picture. It looks so professional !! So you did a very good job so far.
EMC stat is emc status channel. You have about 3 channels.
The mdi channel is manual data input channel. Is has a state (back call if that state is active).
All the back call things you can ask the linuxcnc status channel. (it's used in plc controllers to check the environment).
So when you not check your status channel or environment, you have no feedback to your program
to exactly get feedback to control the entire process, including monitoring bugs. ( i think airbus can use this technique in future to avoid crashing airplanes ).
If you have a 100000 ton sea platform wich is leveled hydraulic, like the oil platform's on sea "deepwater horizon" is a nice example. You must have entire control and feedback (status channel). What would happen if the platorm goe's 45 degrees caused by a bug ? You have problably have seen the move "deepwater horizon". A disaster is depending of a tiny weak spot.
@Cmorley,
I think the doc's of Gscreen are quite good. The advantage is, if users have question's about Gscreen, you are the person that solves their issue or questions in case. Just that you did for me for connect the jog button's in python code. Thanks Mr. Morley !!
Please Log in or Create an account to join the conversation.
"I guess I should add more docs for Gscreen...."
Yes please. For example, how do I use the user message system? All I want to do is get a yes/no dialog before running a gcode program. I figured out the restart dialog but the yes/no has me stumped. I don't want to replicate all the gscreen code in my handler, but use what is already there. Gscreen creates the HAL pins for a message in the INI file, but how do I instantiate that message from the handler? Is there a way to get it without creating HAL pins?
Sorry i was away working and am just getting back to this..did you figure out the messaging system.
Can you give me an example of what the message is for?
Chris M
Please Log in or Create an account to join the conversation.
"I guess I should add more docs for Gscreen...."
Yes please. For example, how do I use the user message system? All I want to do is get a yes/no dialog before running a gcode program. I figured out the restart dialog but the yes/no has me stumped. I don't want to replicate all the gscreen code in my handler, but use what is already there. Gscreen creates the HAL pins for a message in the INI file, but how do I instantiate that message from the handler? Is there a way to get it without creating HAL pins?
Sorry i was away working and am just getting back to this..did you figure out the messaging system.
Can you give me an example of what the message is for?
Chris M
Are you using 2.7 or master version?
either way you will need to manipulate HAL pins to launch the messages.
Master uses an easier code.
Chris M
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.
It's funny I thought Gscreen was a failure to a large degree as few people seemed to have used it. But it seems that it was just linuxcnc's release cycle is so slow that it was not out in the wild long enought and is now starting to be used more regularly.
I think/hope that qtvcp is easier/cleaner to use and most importantly reasonably easy to learn it you used gscreen.
Is your screen something that you would consider giving to linuxcnc for inclusion?
Chris M
Please Log in or Create an account to join the conversation.