CableCheck (Poka-Yoke Check)
From PlcWiki
(Difference between revisions)
Petr.zalabak (Talk | contribs) (→Other parameters) |
|||
(6 intermediate revisions not shown) | |||
Line 1: | Line 1: | ||
- | Generally, this type of an operation checks if the scanned barcode | + | Generally, this type of an operation checks if the scanned barcode matches the product ID. It can be called a unique part check. The scanned bar code (or its substring) needs to match the product ID (or its substring). |
== Mandatory parameters == | == Mandatory parameters == | ||
*Operation.''name''.Type = CableCheck | *Operation.''name''.Type = CableCheck | ||
Line 8: | Line 8: | ||
*Operation.''name''.PartStart[i] = int | *Operation.''name''.PartStart[i] = int | ||
*Operation.''name''.PartLength[i] = int | *Operation.''name''.PartLength[i] = int | ||
- | These two parameters (in case of an operation type CableCheck) define the start position and the substring length '''in the product ID'''. | + | These two parameters ('''in case of an operation type CableCheck''') define the start position and the substring length '''in the product ID'''! Not in the scanned barcode, as it is used in case of PartCheck. |
*Operation.''name''.CheckSumType[i] = int | *Operation.''name''.CheckSumType[i] = int | ||
Possible values of CheckSumType: | Possible values of CheckSumType: | ||
Line 17: | Line 17: | ||
*Operation.''name''.SNStore = '''No''' | Yes | *Operation.''name''.SNStore = '''No''' | Yes | ||
This parameter is used here to define if the part bar code is different by its prefix or suffix: | This parameter is used here to define if the part bar code is different by its prefix or suffix: | ||
- | No - Part number consists of Product ID | + | No - Part number consists of Prefix + Product ID |
- | Yes - Part number consists of | + | Yes - Part number consists of Product ID + Suffix |
+ | *Operation.''name''.PrefixLength[i] = int | ||
+ | This parameter needs to be used in case there is used a prefix and a suffix as well. | ||
+ | |||
+ | == Regex back references == | ||
+ | When you use group in regex, group match is used for comparing. In such case is not necessary to use PrefixLength parameter. | ||
== Examples == | == Examples == | ||
Line 28: | Line 33: | ||
Operation.MainHarness.Index = 1 | Operation.MainHarness.Index = 1 | ||
Operation.MainHarness.SelectPattern[0] = ^\d{7}ABC$ | Operation.MainHarness.SelectPattern[0] = ^\d{7}ABC$ | ||
+ | Operation.MainHarness.SNStore = Yes | ||
+ | |||
+ | 2. The part number consists of a prefix "ABC" + product ID: | ||
+ | Product ID: 1234567 | ||
+ | Tested Part number: ABC'''1234567''' | ||
+ | ''Settings:'' | ||
+ | Operation.MainHarness.Type = CableCheck | ||
+ | Operation.MainHarness.Index = 1 | ||
+ | Operation.MainHarness.SelectPattern[0] = ^ABC\d{7}$ | ||
Operation.MainHarness.SNStore = No | Operation.MainHarness.SNStore = No | ||
+ | |||
+ | 3. The part number consists of a prefix "ABC" + product ID + suffix "D": | ||
+ | Product ID: 1234567 | ||
+ | Tested Part number: ABC'''1234567'''D | ||
+ | ''Settings:'' | ||
+ | Operation.MainHarness.Type = CableCheck | ||
+ | Operation.MainHarness.Index = 1 | ||
+ | Operation.MainHarness.SelectPattern[0] = ^ABC\d{7}D$ | ||
+ | Operation.MainHarness.SNStore = No | ||
+ | Operation.MainHarness.PrefixLength[0] = 3 | ||
+ | |||
+ | 4. Same like 3. using regex group. The part number consists of a prefix "ABC" + product ID + suffix "D": | ||
+ | Product ID: 1234567 | ||
+ | Tested Part number: ABC'''1234567'''D | ||
+ | ''Settings:'' | ||
+ | Operation.MainHarness.Type = CableCheck | ||
+ | Operation.MainHarness.Index = 1 | ||
+ | Operation.MainHarness.SelectPattern[0] = ^ABC(\d{7})D$ |
Current revision as of 09:43, 10 February 2017
Generally, this type of an operation checks if the scanned barcode matches the product ID. It can be called a unique part check. The scanned bar code (or its substring) needs to match the product ID (or its substring).
Contents |
Mandatory parameters
- Operation.name.Type = CableCheck
- Operation.name.Index = (int) index
Other parameters
Bar code settings
- Operation.name.SelectPattern[i] = Regexp
- Operation.name.PartStart[i] = int
- Operation.name.PartLength[i] = int
These two parameters (in case of an operation type CableCheck) define the start position and the substring length in the product ID! Not in the scanned barcode, as it is used in case of PartCheck.
- Operation.name.CheckSumType[i] = int
Possible values of CheckSumType: 0 - No check (default settings) 1 - SumEven + 3*SumOdd MOD 10 2 - SumEven + 3*SumOdd MOD 36 3 - Sum MOD 43 (Code39)
- Operation.name.SNStore = No | Yes
This parameter is used here to define if the part bar code is different by its prefix or suffix: No - Part number consists of Prefix + Product ID Yes - Part number consists of Product ID + Suffix
- Operation.name.PrefixLength[i] = int
This parameter needs to be used in case there is used a prefix and a suffix as well.
Regex back references
When you use group in regex, group match is used for comparing. In such case is not necessary to use PrefixLength parameter.
Examples
1. The part number consists of a product ID + suffix "ABC": Product ID: 1234567 Tested Part number: 1234567ABC Settings: Operation.MainHarness.Type = CableCheck Operation.MainHarness.Index = 1 Operation.MainHarness.SelectPattern[0] = ^\d{7}ABC$ Operation.MainHarness.SNStore = Yes
2. The part number consists of a prefix "ABC" + product ID: Product ID: 1234567 Tested Part number: ABC1234567 Settings: Operation.MainHarness.Type = CableCheck Operation.MainHarness.Index = 1 Operation.MainHarness.SelectPattern[0] = ^ABC\d{7}$ Operation.MainHarness.SNStore = No
3. The part number consists of a prefix "ABC" + product ID + suffix "D": Product ID: 1234567 Tested Part number: ABC1234567D Settings: Operation.MainHarness.Type = CableCheck Operation.MainHarness.Index = 1 Operation.MainHarness.SelectPattern[0] = ^ABC\d{7}D$ Operation.MainHarness.SNStore = No Operation.MainHarness.PrefixLength[0] = 3
4. Same like 3. using regex group. The part number consists of a prefix "ABC" + product ID + suffix "D":
Product ID: 1234567 Tested Part number: ABC1234567D Settings: Operation.MainHarness.Type = CableCheck Operation.MainHarness.Index = 1 Operation.MainHarness.SelectPattern[0] = ^ABC(\d{7})D$