2014 hbm ncode products user group meeting€¦ · • how can i use glyphworks to mitigate...

25
2014 HBM nCode Products User Group Meeting May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA) www.ncode.com

Upload: dinhphuc

Post on 04-Aug-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014 HBM nCode Products User Group Meeting

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 2: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

Sorting and Visualizing Machine Usage Data With Glyphworks

Enhancing the Capabilities of Glyphworks using Python

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 3: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

3

• John Deere• Founded in 1837 by John Deere - a man with an idea• “Committed to those linked to the land” • Business has evolved to meet the needs of a growing population and

changing technology• Currently a global manufacturer of engines, agricultural, construction,

forestry, and turf care equipment, • Financial and customer services provider• $37.8 Billion net sales and revenue in 2013

• John Deere ADV Facility• John Deere Internal Service Provider• Instrumentation design• Data collection• Data analysis• Structural testing

Intro to John Deere

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 4: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

4

• Machine Duty Cycle Data Collection Challenges• Large volume of data• Instrumentation failures in the field can be hard to troubleshoot• Data transmission can be problematic• Diverse product portfolio necessitates a variety of analyses• Etc.

• How Can I Use Glyphworks to Mitigate Challenges?• Automated data screening• Presenting data in video form

Project Background & Challenges

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 5: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

5

• Reasons to pre-screen data• Ensure data exists• Make sure data is useful• Sort data for proper grouping

• Initial Process• Data is processed manually using any compatible viewer software• Notes taken regarding file parameters• Files manually loaded into Glyphworks for further processing• Tedious and time-consuming• Not easily scalable

Automated Data Screening With Glyphworks

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 6: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

6

Automated Data Screening With Glyphworks

Find Test Length

and Correct

Date

Add New Metadata to Original

Data

Determine Data

Usefulness

Add Data Quality

Metadata to Original

Data

Save s3t file of

current run

Collate Metadata

Parameters

Write out Schedule

Files

• A simple, but powerful flow• Python provides test-to test flexibility

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 7: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

7

• Calculate overall test length and date• Obtain GPS time and date at start of run• Input time zone offset from GMT• Use Python’s datetime module to compute proper local time and

date

Automated Data Screening With Glyphworks

Find Test Length

and Correct

Date

Add New Metadata to Original

Data

Determine Data

Usefulness

Add Data Quality

Metadata to Original

Data

Save s3t file of

current run

Collate Metadata

Parameters

Write out Schedule

Files

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 8: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

8

Automated Data Screening With Glyphworks

Find Test Length

and Correct

Date

Add New Metadata to Original

Data

Determine Data

Quality

Add Data Quality

Metadata to Original

Data

Save s3t file of

current run

Collate Metadata

Parameters

Write out Schedule

Files

• Output new parameters as test level metadata• Use a Metadata Manipulation glyph to combine with original data

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 9: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

9

Automated Data Screening With Glyphworks

Find Test Length

and Correct

Date

Add New Metadata to Original

Data

Determine Data

Usefulness

Add Data Quality

Metadata to Original

Data

Save s3t file of

current run

Collate Metadata

Parameters

Write out Schedule

Files

• This segment varies from test to test• Example passenger car test:

• Engine speed must remain above 800 RPM >= 50% of the file length• Vehicle must be moving >= 50% of the file length

• Query the data to determine percentage time above the threshold for each channel

• Compare percentages to design specification and establish metadata########Set flag logic

if (vehspeedpct>=50) and (engspeedpct>=50):flag='true'

else:flag='false'

########Output processing flagoutputmeta.SetItem(-1,"TestInfo","ContinueProcessing",'string',flag)

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 10: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

10

Automated Data Screening With Glyphworks

Find Test Length

and Correct

Date

Add New Metadata to Original

Data

Determine Data

Usefulness

Add Data Quality

Metadata to Original

Data

Save s3t file of

current run

Collate Metadata

Parameters

Write out Schedule

Files

• Output new parameter as test level metadata• Use a Metadata Manipulation glyph to combine with original data

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 11: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

11

Automated Data Screening With Glyphworks

Find Test Length

and Correct

Date

Add New Metadata to Original

Data

Determine Data

Usefulness

Add Data Quality

Metadata to Original

Data

Save s3t file of

current run

Collate Metadata

Parameters

Write out Schedule

Files

• Evaluate processing flag with a test splitter• If flag is true, save s3t file with run data• If flag is false, do not save

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 12: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

12

Automated Data Screening With Glyphworks

Find Test Length

and Correct

Date

Add New Metadata to Original

Data

Determine Data

Usefulness

Add Data Quality

Metadata to Original

Data

Save s3t file of

current run

Collate Metadata

Parameters

Write out Schedule

Files

• Use a metadata display to collate information to build schedule files• Output a multicolumn table to the final Python script

• File naming information• Sorting metadata• Processing flag

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 13: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

13

Automated Data Screening With Glyphworks

Find Test Length

and Correct

Date

Add New Metadata to Original

Data

Determine Data

Usefulness

Add Data Quality

Metadata to Original

Data

Save s3t file of

current run

Collate Metadata

Parameters

Write out Schedule

Files

• Import table of sort criteria• Sort the data based on specified criteria• Write a schedule file with all required data files• For car example:

• First trip: To preschool (discard based on acceptance criteria)• Second trip: To work• Third trip: Home from work• Fourth trip: To store• Fifth trip: Home from store• One schedule is generated from trips 2-5

• Less than 170 lines of code to significantly reduce time and tedium

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 14: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

14

• Visualizing machine operation in a small area can be a challenge!

Generate Data Videos With Glyphworks

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 15: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

15

Generate Data Videos With Glyphworks

Input Setup

Variables

Split Channels

for Analysis

Create Loop

Control Table

Populate Loop

Control Glyph

Extract Frame Data

Save Studio Display

Assemble Movie File

• Use Glyphworks to create individual frames• Assemble the frames into a movie externally

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 16: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

16

Generate Data Videos With Glyphworks

Input Setup

Variables

Split Channels

for Analysis

Create Loop

Control Table

Populate Loop

Control Glyph

Extract Frame Data

Save Studio Display

Assemble Movie File

• Establish how much data each movie frame represents• Establish length of “breadcrumb trail”• Create values with a MetaData Generator glyph• Add values to the time series with a MetaData Manipulation glyph

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 17: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

17

Generate Data Videos With Glyphworks

Input Setup

Variables

Split Channels

for Analysis

Create Loop

Control Table

Populate Loop

Control Glyph

Extract Frame Data

Save Studio Display

Assemble Movie File

• Reduce processing time by reducing channel count• Send through only the channels required for the display

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 18: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

18

Generate Data Videos With Glyphworks

Input Setup

Variables

Split Channels

for Analysis

Create Loop

Control Table

Populate Loop

Control Glyph

Extract Frame Data

Save Studio Display

Assemble Movie File

• A looping superglyph takes care of creating individual frames• Use Python to calculate the number of frames• The script generates a list of frame numbers to iterate on

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 19: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

19

Generate Data Videos With Glyphworks

Input Setup

Variables

Split Channels

for Analysis

Create Loop

Control Table

Populate Loop

Control Glyph

Extract Frame Data

Save Studio Display

Assemble Movie File

• Script exports a multi-column table to the loop control• Using “Multi-Column” loop control sets the proper loop execution

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 20: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

20

Generate Data Videos With Glyphworks

Input Setup

Variables

Split Channels

for Analysis

Create Loop

Control Table

Populate Loop

Control Glyph

Extract Frame Data

Save Studio Display

Assemble Movie File

• Python script imports time series data and loop number • Using trail length, frame duration, and loop number, the script

calculates the points to extract for the current frame• Extract date and time information and assign to metadata• Pass extracted time series and new metadata variables to the

output pipe• Example:

• Frame duration of 1 second• Trail length of 60 seconds• Loop 500• Result: Extract data from 440 seconds to 500 seconds• Result: Time vehicle speed taken from the 500 second data point

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 21: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

21

Generate Data Videos With Glyphworks

Input Setup

Variables

Split Channels

for Analysis

Create Loop

Control Table

Populate Loop

Control Glyph

Extract Frame Data

Save Studio Display

Assemble Movie File

• Data is passed from script to studio display• Calculate feature lines, if desired• Display frame is exported as an image file• The loop number is appended to the file name to keep the frames

in order• Superglyph returns to process the next loop

• Previous example: Next data to be extracted will be from 441 to 501 seconds

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 22: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

22

Generate Data Videos With Glyphworks

Input Setup

Variables

Split Channels

for Analysis

Create Loop

Control Table

Populate Loop

Control Glyph

Extract Frame Data

Save Studio Display

Assemble Movie File

• Multiple software packages available to assemble the movie file from the individual frames

• Details will be a function of the software used• Need to know final frame rate, first file, and codec to use

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 23: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

23

Generate Data Videos With Glyphworks

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 24: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014

HB

M n

Cod

e P

rodu

cts

Use

r Gro

up M

eetin

g

24

• Showed two techniques for improving duty cycle data processing• The scripting glyph is a critical tool

• Neither process would be possible without it

• Matlab coding is already familiar to many• Python is an easy language to learn and use• “Think outside the glyph!”

Summary

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com

Page 25: 2014 HBM nCode Products User Group Meeting€¦ · • How Can I Use Glyphworks to Mitigate Challenges? ... • Use a Metadata Manipulation glyph to combine with original ... •

2014 HBM nCode Products User Group Meeting

Thank you!

Mike BrandJohn Deere ADV FacilityTel. +1 [email protected]

May 14-15, 2014 2014 HBM nCode Products User Group Meeting Livonia, MI (USA)

www.ncode.com