v2.0.0

SmartManager!

This Console update is part of the new SmartManager package. 

SmartManager is a Manufacturing Execution System (MES), compliant with Industry 4.0 standards. It provides essential real-time data to the whole production team to streamline workflow and maximise productivity. SmartManager delivers the following features:

  • Remote real-time status & job history on dashboards, accessible from anywhere

  • Simple job file administration from PC to SmartBench, via Wi-Fi

  • Provision of job-critical data to the whole production team at all stages

  • Enabling of feedback notes from the operator

  • Maintenance status display for simple scheduling, maximising up-time and ROI

  • Notification of process-critical events

SmartManager is the collective name for 3 integrated packages from YetiTool. As jobs are put through SmartBench, these packages enable administrators, operators and managers to input and view live critical MES-data.

Click here to learn more about SmartManager, and how to get started. 

New features

Job data and feedback

See SmartManager data in the filechooser

Add this information to a job with SmartTransfer, and then an operator can check it when the file is chosen.

Or a G-Code preview

No SmartManager metadata? No worries, you can still preview the first 20 lines of a file, which may include comments about the job.

View job information alongside the job preview

When a job has been loaded, see further information that has been gathered from the G-Code file, including feeds, speeds, and comments in the file. 

Send feedback to SmartManager after a job

Send feedback to SmartManager after a job, including batch numbers, production notes, and details of any critical events that occurred during a job. 

Give SmartBench a location, as well as a custom name

This makes it easy to find SmartBench from both SmartTransfer and SmartManager. 

 

Machine data sharing

The Console needs to send out data about SmartBench in order for SmartManager to work, and this data will also be collected by Yeti Tool to improve products and services. 

Users will be able to read the data policy, and accept or decline it after downloading this release, or when they switch their new SmartBench on for the first time. 

If a user accepts the data policy, then SmartBench will send data to Yeti Tool including Console hostname, public IP address, maintenance information and information about job critical events such as alarms. 

This data cannot be matched to any customer or order information kept by Yeti Tool, and is considered to be anonymous data. 

If a user declines the data policy, the Console Wi-Fi will be disabled, and no data will be sent from the Console. 

UI Improvements

  • No need to restart SmartBench after a Software update - reduces likelihood of memory corruption as well! 

  • Updated Welcome and Warranty Registration start up sequence.

  • Blank buttons on file loading screen hidden until file is loaded. 

  • Made editable fields on System Info screen more obvious, with white text box & pencil graphics. 

  • Dropped feedback screen from shapecutter, to be replaced by new job feedback screens.

  • Job completion screens now show job duration times as: 

  • Job duration (actual runtime without pauses)

  • Pause duration (total downtime during a job)

 

Technical

These are the more technical changes that we have put into this release. While they are important for improving SmartBench, there’s definitely some programming jargon in this section!

 

Critical change to platform install

Prior to version v2.0.0, the platform was managed by another Yeti Tool repository, console-raspi3b-plus-platform. 

The platform, after initial set-up, was managed by an ansible playbook stored in the corresponding local git repository on the Console. 

This playbook, and all of it’s necessary components, has now been moved into the easycut-smartbench repo, and when v2.0.0 is installed for the first time, will set itself up to use the easycut-smartbench version of ansible from this point onwards. 

The ansible folder in console-raspi3b-plus-platform is now obsolete. 

Easycut will look for the ansible_from_easycut flag in the config file, to know that it is running the new ansible playbook. 

 

Changes to ansible playbook

Packages

The following packages have been added to the package manager, and will be installed when the Console sees Wi-Fi for the first time after an update, during a call to the playbook or at start-up. 

  • python-pika 

    • This is required to run the SmartManager module, as this manages the messages sent to the SmartManager server.

  • git-repair 

    • This package is used to restore corrupted git repositories. Corruption is most likely caused by hard shutdowns, and can prevent software updates. 

Playbook changes

  • Ignore errors if package install fails

  • Cron job to keep the journalctl file low

  • Add “reset=17” line to avrdude config file

  • Remove 'dtoverlay=pi3-disable-bt’ line from /boot/config.txt if it exists, to use ttyS* port

    • This is important as in a future releases, we want to enable firmware updates by adding 'dtoverlay=pi3-disable-bt’, to force the software to run through ttyAMA* port. This ensures that, if we needed to roll a software release back to an earlier version in the future, if we went through v2.0.0, we could then safely roll back to previous releases which run off the ttyS* port

  • Update GPU memory with ansible

    • Previously EC would check the /boot/config.txt file on starting, to replace the gpu_mem=128 line with gpu_mem=256. This has been moved to ansible. 

  • Copy in new ./starteasycut.sh script

  • Add ansible_from_easycut line to Easycut config

    • This flag means that EC knows it doesn’t have to force a run of the moved ansible playbook on startup, and we know that the Console is using the ansible files in the easycut-smartbench repository.

 

New starteasycut.sh script

New starteasycut.sh script is copied into /home/pi/ by ansible:

  • Starts pigpio daemon

  • Checks that python is running after 5 seconds

  • If python is not running, it resets the git repository, and tries to run easycut again

  • If that doesn’t work, it’ll force a copy of a backup repo into the main repo. 

 

Refactored start-up sequence

Put all screens that may occur during the start-up sequence into one app module. 

  • Starting SmartBench screen now only appears after critical initial sequence screens, e.g. Release notes, data consent etc. 

  • Config checks, with the exception of check_config, ansible_from_easycut, and version configuration have been moved into start_up_sequence_manager.py. 

 

Server connection module

New smartbench_flurry_database_connection module handles the connection to the servers, using pika Blocking Connection adapter. 

It sends machine data, including machine name, hostname, software version, and public IP address and status. 

During a job, machine data also includes maintenance information, job progress, and peak data for feeds, speeds, and overload. 

The module will also send information about critical events, including: 

  • Alarms

  • Errors

  • Spindle overload

  • Job start and end (including cancellation)

  • Job pause and resume 

 

Technical notes

Git tag: v2.0.0

Official release name: The Great Big SmartManager Release with Extra Platform Changes

Git commit: 8f40dda


You've completed this article

Next article

Are you sure?

This link will take you away from the CNC Academy

Cancel

Follow link

The page will open in a new tab/window.