User Tools

Site Tools


mycnc:mycnc_screen_configuration

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
mycnc:mycnc_screen_configuration [2020/01/20 12:58] ivanmycnc:mycnc_screen_configuration [2020/01/24 13:12] ivan
Line 5: Line 5:
 ==== Getting Started with editing the myCNC screen==== ==== Getting Started with editing the myCNC screen====
  
-By default, myCNC comes with a number of profiles, each with slight visual differences which are designed to best suit the workflow of a particular system, be it a plasma cutting machine, a mill, or a tangential knife setup. However, sometimes it is necessary to edit the software screen to better suit the particular workflow of the operator. Luckily, the myCNC software is almost endlessly customizable since it comes with an ability to edit the .xml files which are responsible for displaying all the necessary on-screen content. +By default, myCNC comes with a number of profiles, each with slight visual differences which are designed to best suit the workflow of a particular system, be it a plasma cutting machine, a mill, or a tangential knife setup. However, sometimes it is necessary to edit the software screen to better suit the particular workflow of the operator. Luckily, the myCNC software is almost endlessly customizable since it comes with the ability to edit the .xml files which are responsible for displaying the on-screen content. 
  
 These .xml files are stored in your profile folder. On Ubuntu systems, go to your home folder, and then navigate to ''.config/myCNC/profiles''. All your profiles (which can be chosen from within the myCNC software by going into ''Settings > Info'') are stored here: These .xml files are stored in your profile folder. On Ubuntu systems, go to your home folder, and then navigate to ''.config/myCNC/profiles''. All your profiles (which can be chosen from within the myCNC software by going into ''Settings > Info'') are stored here:
Line 355: Line 355:
   * it is necessary to **include** the actual code for the widget that will be inserted (oil-change.xml). That file contains all the necessary information about what's inside the widget, however it is not necessary to edit it if the entire widget needs to be moved or removed from the screen.   * it is necessary to **include** the actual code for the widget that will be inserted (oil-change.xml). That file contains all the necessary information about what's inside the widget, however it is not necessary to edit it if the entire widget needs to be moved or removed from the screen.
  
-Note that the widget within which the oil-change myitems window is embedded is its own separate widget (consisting of a frame with rounded borders). The example code for that will be as follows:+ 
 +++++ 
 + 
 +++++ Border | 
 + 
 +Note that while the myitems screen element from the example above is its own element, it is also embedded into a separate on-screen element called the border. This border is a frame around an element (typically with rounded cornersand it allows for an easy visual separation between different on-screen elements 
 + 
 +As mentioned, an example of a border can be seen around the oil change section in the user settings tab of the X1366M/M4 profiles: 
 + 
 +{{:mycnc:screen-config-033-border.png}} 
 + 
 +Sample border code is available here:
  
 <code c>  <gitem  where="user-widget" name="oil-change-frame" <code c>  <gitem  where="user-widget" name="oil-change-frame"
Line 369: Line 380:
  
 ++++ ++++
 +
 +++++ Skin |
 +
 +A skin is a parameter which effectively serves as a background for the element within which it is embedded. 
 +
 +Example of a skin can be seen in the Gantry Alignment widget:
 +
 +{{:mycnc:screen-config-034-skin.png}}
 +
 +The background of the widget consists of a diagram of the machine. This diagram is embedded using the ''skin'' parameter. 
 +
 +Example code:
 +
 +<code><gitem  where="gantry-border" name="gantry-widget" bgColor="##b-widget"  type="myitems"
 +skin="gantry/gantry"
 +position="10;10" width="600" height="400" /></code>
 +
 +  * **where** specifies the element within which the new element is embedded
 +  * **name** should be chosen to be unique
 +  * **bgColor** specifies the background colour of the element
 +  * **type** is set to ''myitems'' (discussed in the other section of this manual)
 +  * **skin** is set to the image path within the art/buttons-no-theme folder
 +  * **position** specifies the position in the element within which the item is located
 +  * **width** and **height** specify the size
 +
 +++++ 
  
 ++++Button| ++++Button|
Line 442: Line 479:
 ++++ ++++
  
-++++ GLView |+++++ GLView (3D Visualization)|
  
 GLView allows to display a 3D visualization window which will show a visualization of the imported program (such as the window on the main screen of myCNC software's 1366M4 profile).  GLView allows to display a 3D visualization window which will show a visualization of the imported program (such as the window on the main screen of myCNC software's 1366M4 profile). 
Line 467: Line 504:
 ++++ ++++
  
-++++ NCView |+++++ NCView (2D Visualization)|
  
 {{:mycnc:screen-config-018-2d.png}} {{:mycnc:screen-config-018-2d.png}}
Line 524: Line 561:
   * **name** and **type** are set to "statusbar"   * **name** and **type** are set to "statusbar"
 ++++ ++++
-++++ NCList |+++++ NCList (G-code list) |
  
 The NCList widget is used to display the G-code commands window to the user, as can be seen in the G-code tab on the main screen of the 1366M4 profile, as well as the nesting, rotation and Run From Here buttons:  The NCList widget is used to display the G-code commands window to the user, as can be seen in the G-code tab on the main screen of the 1366M4 profile, as well as the nesting, rotation and Run From Here buttons: 
Line 541: Line 578:
   * **type="frame"** allows to draw a frame border around the NCList window.    * **type="frame"** allows to draw a frame border around the NCList window. 
   * **hide-list** serves as an option to hide the x-log and x-mill windows when the NCList window is active (as they are all situated in the same area). The **exclusive** flag signifies that only the NCList widget will be up on the screen if it is selected, thus allowing to not interfere with x-log and x-mill windows (the same setting is present in both other respective windows).   * **hide-list** serves as an option to hide the x-log and x-mill windows when the NCList window is active (as they are all situated in the same area). The **exclusive** flag signifies that only the NCList widget will be up on the screen if it is selected, thus allowing to not interfere with x-log and x-mill windows (the same setting is present in both other respective windows).
 +++++
 +
 +++++ Myscope (graphs and plots) |
 +
 +The ''myscope'' screen element allows the user to display time graphs of information received by the myCNC application. The graphs will look similar to the following image:
 +
 +{{:mycnc:screen-config-032-myscope-plot.png}}
 +
 +Sample code to add a ''myscope'' element to the myCNC screen: 
 +
 +<code> <gitem where="xp" name="x-graph" position="90;90" 
 + width="680" height="360" basewidth="680" baseheight="360" hidden="yes"
 + type="frame" border-color="##b-border" border-width="2" border-radius="10" 
 + bgColor="##b-main"  />
 +
 +
 +<gitem where="x-graph" position="10;10" width="660" height="165" 
 + name="myscope1" type="myscope" yrange="0;4095" K="1"
 + source="adc0;adc1" sampling="50" /></code> 
 +
 +  * **where** indicated into which screen element the myscope graph will be inserted (in this example, it will be inserted into a border called ''x-graph''). 
 +  * **position** indicates the XY position within the element into which it is inserted
 +  * **width** and **height** indicate the size of the graph
 +  * **name** should be a unique name 
 +  * **type** should be set to ''myscope''
 +  * **yrange** will specify the Y-axis range of the graph 
 +  * **K** will specify the coefficient by which the necessary information will be multiplied by before being displayed
 +  * **source** is the name of the port or the variable which will be monitored. A list of possible sources is provided below.
 +  * **sampling** specifies the rate at which the information will be retrieved (in this example, the graph will be updated every 50 milliseconds)
 +
 +^ Source ^ Description ^
 +| adc0 | ADC #0. ''adc0'' through ''adc7'' are available |
 +| pwm0 | PWM #0. ''pwm0'' through ''pwm7'' are available |
 +| multidev-adc0 | ADC #0 of the slave controller (if multiple devices are used). multidev-adc0 through multidev-adc7 are available | 
 +| speed-xyz | Movement speed of the machine |
 +| speed-abc | Rotation movement speed of the machine | 
 +| thc-control | THC system speed |
 +| thc-reference | THC Reference voltage |
 +| thc-sensor | THC Arc Voltage | 
 +| data-counter | Reserved for future implementation | 
 +| time-counter | Reserved for future implementation |
 +| cnc-gvariable- | Monitor a myCNC [[mycnc:global_variables|global variable]]. The variable should be included after the dash, such as in ''cnc-gvariable-7010'' |
 +
 +
 ++++ ++++
  
mycnc/mycnc_screen_configuration.txt · Last modified: 2023/07/25 11:26 by ivan

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki