กลับไปหน้าบทความ

อ่าน 7 นาที

ดอทโค้ด

DotCode เป็น บาร์โค้ดเมทริกซ์สองมิติ (2D) ที่คิดค้นขึ้นในปี 2551 [ 1 ] โดย Hand Held Products เพื่อใช้แทน Code 128 ที่ล้าสมัย ในขณะนี้...

ดอทโค้ด

ตัวอย่างโค้ด DotCode

DotCode เป็นบาร์โค้ดเมทริกซ์สองมิติ (2D)ที่คิดค้นขึ้นในปี 2551 [ 1 ]โดยHand Held Productsเพื่อใช้แทนCode 128 ที่ล้าสมัย ในขณะนี้สมาคมเพื่อการระบุตัวตนอัตโนมัติและการเคลื่อนที่ (AIM) ได้ออก ให้เป็น “ISS DotCode Symbology Specification 4.0” [ 2 ] DotCode ประกอบด้วยจุดกลมสีดำที่กระจายตัวและช่องว่างสีขาวบนพื้นหลังสีขาว ในกรณีที่พื้นหลังเป็นสีดำ จุดอาจเป็นสีขาว DotCode ได้รับการพัฒนาขึ้นเพื่อใช้กับเครื่องพิมพ์อุตสาหกรรมความเร็วสูง[ 3 ]ซึ่งความแม่นยำในการพิมพ์อาจต่ำ เนื่องจาก DotCode ตามมาตรฐานไม่ต้องการองค์ประกอบที่ซับซ้อน เช่น เส้นต่อเนื่องหรือรูปทรงพิเศษ จึงสามารถนำไปใช้กับการแกะสลักด้วยเลเซอร์ หรือสว่านอุตสาหกรรมได้

DotCode สามารถแสดงเป็นอาร์เรย์สี่เหลี่ยมผืนผ้าที่มีขนาดด้านละ 5X จุด ขนาดสูงสุดของ DotCode ไม่ได้ถูกจำกัดโดยมาตรฐาน[ 4 ] (เช่นเดียวกับ Code 128 ที่ไม่ถูกจำกัด) แต่แนะนำให้ใช้ขีดจำกัดในทางปฏิบัติที่ 100x99 [ 2 ] : 5.2.1.4 ซึ่งสามารถเข้ารหัสตัวเลขได้ประมาณ 730 หลัก อักขระตัวอักษรและตัวเลข 366 ตัว หรือ 304 ไบต์

DotCode เป็นส่วนขยายของบาร์โค้ด Code 128 ซึ่งช่วยให้สามารถเข้ารหัสอาร์เรย์ข้อมูล 8 บิตและUnicode ได้อย่างกะทัดรัดยิ่งขึ้น พร้อม คุณสมบัติ การตีความช่องสัญญาณแบบขยายนอกจากนี้ DotCode ยังให้ความหนาแน่นของข้อมูลมากกว่ามาก และการแก้ไขข้อผิดพลาดแบบ Reed–Solomonซึ่งช่วยให้สามารถกู้คืน dotcode ที่เสียหายบางส่วนได้ อย่างไรก็ตาม การใช้งานหลักของ DotCode เช่นเดียวกับ Code 128 คือการเข้ารหัสข้อมูลGS1 ที่มีประสิทธิภาพ [ 5 ]ซึ่งใช้ในอุตสาหกรรมการขนส่งและบรรจุภัณฑ์ทั่วโลก

ประวัติและมาตรฐาน

บาร์โค้ด DotCode ถูกคิดค้นขึ้นในปี 2008 [ 1 ]โดย ดร. แอนดรูว์ ลองแอครี จาก บริษัท Hand Held Productsและได้รับการกำหนดมาตรฐานในปี 2009 [ 6 ]โดยAIMในชื่อ “ข้อกำหนดสัญลักษณ์บาร์โค้ด - DotCode” [ 7 ]ในปี 2019 DotCode ได้รับการทบทวนในชื่อ “ข้อกำหนดสัญลักษณ์ DotCode ของ ISS เวอร์ชัน 4.0” [ 2 ]

มีการจดทะเบียนสิทธิบัตรหลายฉบับที่เกี่ยวข้องกับการเข้ารหัสและถอดรหัส DotCode:

  • สิทธิบัตรของสหรัฐอเมริกา US20090200386A1 โดย Hand Held Products Inc "สัญลักษณ์ 2 มิติที่อ่านได้ด้วยเครื่องจักร พิมพ์ได้ตามต้องการ" [ 1 ]
  • สิทธิบัตรของสหรัฐอเมริกา US20090200386A1 โดย Datalogic IP Tech SRL "ระบบและวิธีการสกัดข้อมูลบิตสตรีมในรหัสออปติคอลสองมิติ" [ 8 ]
  • สิทธิบัตรจีน CN113297872A โดยบริษัท Fuzhou Symbol Information Technology จำกัด "วิธีการและอุปกรณ์ระบุรหัสจุด" [ 9 ]

แอปพลิเคชัน

บาร์โค้ด DotCode สามารถใช้งานได้ในลักษณะเดียวกับCode 128หรือบาร์โค้ดเมทริกซ์ (2D) ใดๆ ในขณะนี้ ส่วนใหญ่ใช้เพื่อเข้ารหัสข้อมูล GS1 ในอุตสาหกรรมยาสูบ [ 10 ] [ 11 ] เครื่องดื่มแอลกอฮอล์และเครื่องดื่ม ไม่มีแอลกอฮอล์[ 12 ]ยา และร้านขายของชำ การใช้งานหลักในขณะนี้คือในอุตสาหกรรมยาสูบ[ 13 ] [ 14 ]

ข้อดีหลักของ DotCode คือ: [ 15 ]

การออกแบบบาร์โค้ด

ดอทโค้ดแสดงข้อมูลในโครงสร้างสี่เหลี่ยมผืนผ้า ซึ่งประกอบด้วยจุดกลมสีดำและช่องว่างสีขาวบนพื้นหลังสีขาว หรือจุดกลมสีขาวบนพื้นหลังสีดำ ดอทโค้ดไม่มีรูปแบบตัวค้นหาเหมือนบาร์โค้ด 2 มิติอื่นๆ และต้องตรวจจับด้วยอัลกอริธึมการตรวจจับกลุ่ม ข้อมูลที่ช้า เช่นตัวกรองกาบอร์หรือการแปลงฮอฟแบบวงกลมข้อมูล เมตาเดต้า และรหัสแก้ไขข้อผิดพลาดทั้งหมดถูกเข้ารหัสในอาร์เรย์จุดเดียวกัน ซึ่งไม่มีความแตกต่างทางสายตาใดๆ

ต่อไปนี้เป็นตัวอย่างบางส่วนของโค้ด DotCode:

โครงสร้างสัญลักษณ์ดอทโค้ด

สัญลักษณ์ DotCode สร้างขึ้นจากองค์ประกอบต่อไปนี้: [ 2 ] : 5.1

  • บิตมาสก์สองบิตซึ่งแสดงในแผนภาพด้วยจุดสีเขียวสองจุด
  • บิตข้อมูล (บิตข้อมูลและบิตแก้ไขข้อผิดพลาด) ซึ่งต้องอ่านจากบนลงล่าง (ด้านบาร์โค้ดคู่) และจากซ้ายไปขวา (ด้านบาร์โค้ดคี่)
  • จุดมุมที่ทำเครื่องหมายสีแดงในแผนภาพ สามารถใช้เป็นบิตข้อมูลหรือบิตเติม (จุดสีดำ) ได้
  • พื้นที่เงียบสงบต้องมีขนาดอย่างน้อย 3 เท่าของขนาดจุด

อาร์เรย์บิต DotCode แสดงได้ดังนี้: (บิตมาสก์สองบิต: M2, M1) (บิตข้อมูล) (บิตมุม ซึ่งอาจเป็นบิตข้อมูลหรือบิตเติม: C1 – C6)

รหัสคำข้อมูลในช่วง 0 – 112 จะถูกเข้ารหัสในรูปแบบจุดไบนารี 5 ใน 9 [ 2 ] : 5.2 ซึ่งเข้ารหัสจากจุด 9 จุด โดยมีจุดสีดำ 5 จุดและช่องว่างสีขาว 4 จุด ส่วนที่เหลือของเมทริกซ์บาร์โค้ด (ส่วนที่เหลือจากการหารด้วย 9) จะถูกเติมด้วยบิตเติมสีดำ[ 2 ] : 5.2.3 บิตเติมสามารถเป็นได้ตั้งแต่ 0 ถึง 8 อาร์เรย์บิต DotCode ทางตรรกะแสดงเป็น: (บิตมาสก์ 2 บิต) (รหัสคำข้อมูล 9 บิตต่อคำ) (บิตเติม 0 – 8 บิต)

ขนาด DotCode มีข้อกำหนดดังต่อไปนี้: [ 2 ] : 5.1

  • ผลรวมของความกว้างและความสูงของ DotCode ต้องเป็นเลขคี่: ;
  • ขนาดขั้นต่ำของแต่ละด้านต้องมี 5 ส่วนขนาดสูงสุดไม่มีข้อจำกัด
  • ขอแนะนำให้ใช้ความกว้างและความสูงเพื่อให้มีบิตสีดำสำหรับเติมอย่างน้อย 6 บิต โดยที่ความจุของบิตข้อมูลจะมาจากผลหารของ 9 บวกหรือเท่ากับ 6: [ 2 ] : 5.2.1.4

การปกปิดข้อมูล

เพื่อลดปัญหาของสัญลักษณ์ DotCode รหัสคำข้อมูลจะถูกปิดบังเพื่อสร้างลำดับภาพอื่น รูปแบบการปิดบังจะถูกนำไปใช้กับลำดับข้อมูลเท่านั้นและไม่ส่งผลกระทบต่อรหัสคำแก้ไขข้อผิดพลาด มาตรฐาน DotCode มีรูปแบบการปิดบัง 4 แบบ ซึ่งเข้ารหัสเป็น 2 บิตและวางไว้เป็น 2 บิตแรกของอาร์เรย์บิตสัญลักษณ์[ 2 ] : 5.2.4

บิตการเลือกมาสก์ดอทโค้ด
หน้ากาก บิต ตัวอย่าง การดำเนินการมาสก์: 099 099 099 099 099 099 099 099 106
000เพิ่มค่า 0 ทีละเท่าๆ กันให้กับแต่ละค่า กล่าวคือ ไม่มีการเปลี่ยนแปลง(000) 099 099 099 099 099 099 099 099 106
101เพิ่มจำนวนทวีคูณของ 3 ต่อเนื่องกันให้กับแต่ละค่า โดยหารด้วย 113 (001) 099 102 105 108 111 001 004 007 017
210เพิ่มจำนวนทวีคูณของ 7 ต่อเนื่องให้กับแต่ละค่า โดยหารด้วย 113 (002) 099 106 000 007 014 021 028 035 049
311เพิ่มจำนวนทวีคูณของ 17 ต่อเนื่องกันให้กับแต่ละค่า โดยหารด้วย 113 (003) 099 003 020 037 054 071 088 105 016

การแก้ไขข้อผิดพลาด

DotCode ใช้การแก้ไขข้อผิดพลาด Reed–Solomon [ 2 ] : 5.3 ด้วยกำลังเฉพาะของ 3 และฟิลด์จำกัด หรือGF(113)รหัสคำข้อมูลแสดงด้วยค่าตั้งแต่ 0 ถึง 112 และค่ามาสก์นับเป็นรหัสคำข้อมูลนำหน้าตั้งแต่ 0 ถึง 3 ด้วยวิธีนี้ ความยาวของอาร์เรย์ที่ได้รับการป้องกันข้อมูลคือ (1 + ND) แต่จำนวนรหัสคำแก้ไขข้อผิดพลาดจะคำนวณจาก ND เท่านั้น: โดย ที่ ND คือรหัสคำข้อมูล และ NC คือรหัสคำแก้ไขข้อผิดพลาด

รหัสคำ NW ที่ได้จากการใช้รหัสคำแก้ไขข้อผิดพลาดคือ: โดย ที่ NW คือรหัสคำเข้ารหัสทั้งหมด: 1 รหัสคำมาสก์ + รหัสคำข้อมูล (ND) + รหัสคำแก้ไขข้อผิดพลาด (NC)

เนื่องจากการแก้ไขข้อผิดพลาดแบบ Reed–Solomon ไม่สามารถแก้ไขจำนวนรหัสคำที่มากกว่าพหุนามได้ ดังนั้นหาก NW เกิน 112 ข้อมูลจะถูกแบ่งออกเป็นบล็อกแก้ไขข้อผิดพลาด โดย ที่ B คือจำนวนบล็อก

สามารถแบ่งข้อมูลออกเป็นบล็อกได้ดังนี้ สำหรับแต่ละบล็อก '''n''' โดยที่ n มีค่าตั้งแต่ 1 ถึง B:

ข้อมูลการแก้ไขข้อผิดพลาดจะถูกเขียนหลังจากบล็อกข้อมูลเดี่ยวในโหมดสุ่ม: [ 16 ] (ND)(NC1_1)(NC2_1)(NC3_1)...(NC1_n)(NC2_m)(NC3_k)

การเข้ารหัส

ขนาดการเข้ารหัส DotCode ไม่ได้ถูกจำกัดด้วยมาตรฐาน แต่ขนาดการเข้ารหัสที่ใช้งานได้จริงในเวอร์ชัน 100x99 ซึ่งประกอบด้วยจุด 4950 จุด สามารถเข้ารหัสคำข้อมูลดิบได้ 366 คำ, ตัวเลข 730 หลัก, ตัวอักษรและตัวเลข 365 ตัว หรือ 304 ไบต์ ข้อความข้อมูลใน DotCode จะถูกแทนด้วยคำข้อมูลตั้งแต่ 0 ถึง 112 ซึ่งเข้ารหัสด้วยรูปแบบจุดไบนารี 5 ใน 9

DotCode รองรับคุณสมบัติต่อไปนี้: [ 2 ] : 5.2.1

  • เข้ารหัสตัวเลขหรือชุดอักขระ ASCII (ระหว่าง 0 ถึง 127) ด้วยชุดรหัส A, B และ C และค่า ASCII แบบขยาย (128 ถึง 255) ด้วยการเลื่อนขึ้น (Upper Shift)
  • เข้ารหัสไบต์ได้อย่างมีประสิทธิภาพ (5 ไบต์เป็น 6 รหัสคำ) ด้วย Binary Latch;
  • เข้ารหัสข้อมูล GS1; [ 5 ]
  • เข้ารหัสสัญลักษณ์ Unicode ด้วยคุณสมบัติการตีความช่องสัญญาณแบบขยาย (Extended Channel Interpretation );
  • รองรับการเข้ารหัสแบบต่อเติมที่มีโครงสร้าง (โดยใช้สัญลักษณ์บาร์โค้ดหลายตัวเป็นกระแสข้อมูลเดียวในเชิงตรรกะ)
  • รองรับการเข้ารหัสแบบ “มาโคร”
ชุดอักขระดอทโค้ด
สัญลักษณ์ข้อมูล สัญลักษณ์ข้อมูล
รหัสลับ ชุดรหัส A ชุดรหัส B ชุดรหัส C ลายจุด รหัสลับ ชุดรหัส A ชุดรหัส B ชุดรหัส C ลายจุด
ชาร์ เอเอสซีไอ ชาร์ เอเอสซีไอ ชาร์ เอเอสซีไอ ชาร์ เอเอสซีไอ
0เอสพี32เอสพี320010101010157วาย89วาย8957110101100
1!33!330101010101158909058110110010
2"34"340201010110159[91[9159110110100
3#35#350301011010160\92\9260111001010
4$36$360401101010161]93]9361111010010
5%37%370510101011062^94^9462111010100
6&38&380610101101063_95_9563001011110
7'39'390710110101064นูแอล00`9664001101110
8(40(400811010101065เอสโอเอช01เอ9765001110110
9)41)410901010111066เอสทีเอ็กซ์029866001111010
10*42*421001011011067อีทีเอ็กซ์039967010011110
11+43+431101011101068อีโอที0410068010111100
12,44,441201101011069เอ็นคิว05อี10169011001110
13-45-451301101101070แอก06เอฟ10270011011100
14.46.461401110101071เบล07จี10371011100110
15/47/471510010101172ปริญญาตรี08ชม.10472011101100
160480481610010110173เอชที09ฉัน10573011110010
171491491710011010174แอลเอฟ10เจ10674011110100
182502501810100101175วีที11เค10775100010111
193513511910100110176เอฟเอฟ1210876100011011
204524522010101001177ซีอาร์1310977100011101
215535532110101100178ดังนั้น14n11078100100111
226546542210110010179ไอเอส15โอ11179100110011
237557552310110100180ดีแอลอี16พี11280100111001
248568562411001010181ดีซี117q11381101000111
259579572511010010182ดีซี21811482101100011
26:58:582611010100183ดีซี31911583101110001
27;59;592700101011184ดีซี420ที11684110001011
28<60<602800101101185นาค21คุณ11785110001101
29=61=612900101110186ซิน22วี11886110010011
30>62>623000110101187อีทีบี2311987110011001
31?63?633100110110188สามารถ24x12088110100011
32@64@643200111010189อีเอ็ม25y12189110110001
33เอ65เอ653301001011190ซับ26z12290111000101
34บี66บี663401001101191เอสเอส27{12391111001001
35ซี67ซี673501001110192เอฟเอส28|12492111010001
36ดี68ดี683601010011193จีเอส29}12593000101111
37อี69อี693701011001194อาร์เอส30~12694000110111
38เอฟ70เอฟ703801011100195เรา31เดล12795000111011
39จี71จี713901100101196กะ Bซีอาร์/แอลเอฟ13/1096000111101
40ชม72ชม7240011001101972x เกียร์ Bเอชที *0997001001111
41ฉัน73ฉัน7341011010011983x เกียร์ Bเอฟเอส *2898001100111
42เจ74เจ7442011011001994x เกียร์ Bจีเอส *2999001110011
43เค75เค75430111001011005x เกียร์ Bอาร์เอส *30(17)...(10)001111001
44แอล76แอล76440111010011016x เกียร์ Bกะ Aสลัก A010001111
45เอ็ม77เอ็ม7745100101110102สลัก Bสลัก Aกะ B011000111
46เอ็น78เอ็น78461001101101032x ชิฟต์ C2x ชิฟต์ C2x เกียร์ B011100011
47โอ79โอ79471001110101043x เกียร์ C3x เกียร์ C3x เกียร์ B011110001
48พี80พี80481010011101054x เกียร์ C4x เกียร์ C4x เกียร์ B100011110
49คิว81คิว8149101011100106สลัก Cสลัก Cสลัก B100111100
50อาร์82อาร์8250101100110107เอฟเอ็นซี1เอฟเอ็นซี1เอฟเอ็นซี1101111000
51เอส83เอส8351101101100108เอฟเอ็นซี2เอฟเอ็นซี2เอฟเอ็นซี2110001110
52ที84ที8452101110010109เอฟเอ็นซี3เอฟเอ็นซี3เอฟเอ็นซี3110011100
53ยู85ยู8553101110100110เลื่อนขึ้น Aเลื่อนขึ้น Aเลื่อนขึ้น A110111000
54วี86วี8654110010110111การเปลี่ยนแปลงขึ้นบน Bการเปลี่ยนแปลงขึ้นบน Bการเปลี่ยนแปลงขึ้นบน B111000110
55878755110011010112สลักไบนารีสลักไบนารีสลักไบนารี111001100
56X88X8856110100110* ในตำแหน่งข้อมูลหลัก สิ่งเหล่านี้จะกลายเป็น “มาโคร”

มีกฎหลักสามข้อในการเข้ารหัสข้อความ:

  • การเข้ารหัสเริ่มต้นตามค่าเริ่มต้นคือชุดรหัส C;
  • ในกรณีที่ตัวเลขสองหลักในชุดรหัส C (ค่า 0 – 100) ถูกเข้ารหัสในตำแหน่งของคำรหัสแรก ข้อความจะถูกถอดรหัสเป็นข้อความ GS1
  • หากมีการเข้ารหัส FNC1 (ซึ่งมีผลตรงข้ามกับรหัส 128 ) หรือรหัสคำที่ไม่ใช่ตัวเลขอื่นๆ (101 - 112) ในตำแหน่งรหัสคำแรก ข้อความจะถูกถอดรหัสเป็นข้อความที่ไม่ใช่ GS1

การเข้ารหัสไบต์ไบนารี

DotCode สามารถเข้ารหัสชุดอักขระ 8 บิตเต็มรูปแบบได้สองวิธี: [ 2 ] : 5.2.1.1

  • ด้วยการเลื่อนขึ้นด้านบน ซึ่งต้องใช้รหัสคำ 2 คำในสัญลักษณ์เดียว (128 ถึง 255)
  • ด้วย Binary Latch ซึ่งต้องการสัญลักษณ์ Binary Latch 1 ตัว และรหัสคำ 6 คำ ในทุกๆ 5 ไบต์

โหมด Upper Shift สามารถเข้ารหัสอักขระ ASCII แบบขยาย (128 ถึง 255) ในสองรหัสคำ โดยกลับไปยังโหมดก่อนหน้าได้:

การเข้ารหัส DotCode Upper Shift
ประเภทกะบน รหัสลับ เอเอสซีไอ
เลื่อนขึ้น A64 ถึง 95128 ถึง 159
การเปลี่ยนแปลงขึ้นบน B0 ถึง 95160 ถึง 255

โหมด Binary Latch สามารถเข้ารหัสชุดอักขระ 8 บิตและลำดับ ECI ตั้งแต่ 1 ถึง 5 สัญลักษณ์ โดยใช้กฎต่อไปนี้:

  • ข้อมูลจะถูกแบ่งออกเป็นบล็อกละ 5 สัญลักษณ์ (ไบต์หรือตัวระบุโหมด ECI) หรือ 6 รหัสคำ;
  • ค่า 0 – 258 ถูกแปลงจากฐาน 259 จำนวน 5 ค่า ไปเป็นฐาน 103 จำนวน 6 ค่า
  • ค่าตั้งแต่ 0 ถึง 255 เป็นค่าไบต์;
  • ค่า 256, 257 หรือ 258 ใช้สำหรับเข้ารหัสลำดับ ECI ใน 1, 2 หรือ 3 ไบต์ถัดไปตามลำดับ
  • รหัส DotCode ใดๆ ในลำดับการเข้ารหัสที่สูงกว่า 102 (ตั้งแต่ 103 ถึง 112) จะขัดจังหวะหรือเปลี่ยนโหมด
รหัส DotCode โหมดไบนารี รหัสคำที่ไม่ใช่ข้อมูล
รหัสลับ การดำเนินการ
103ขัดจังหวะด้วยการกด Shift C สองครั้ง
104ขัดจังหวะด้วยการกด Shift C 3 ครั้ง
105ขัดจังหวะด้วยการกด Shift C 4 ครั้ง
106ขัดจังหวะด้วยการกด Shift C 5 ครั้ง
107ขัดจังหวะด้วยการกด Shift C 6 ครั้ง
108ขัดจังหวะด้วยการกด Shift C 7 ครั้ง
109สิ้นสุดด้วยสลักไปยัง A
110ยุติด้วยสลักไปยัง B
111ยุติด้วยสลักไปยัง C
112จบด้วยการแยกสัญลักษณ์ ล็อคไปที่ C

ดังที่เราจะเห็นในตารางต่อไปนี้ Binary Latch เข้ารหัสข้อมูลได้อย่างมีประสิทธิภาพมากขึ้น โดยเริ่มต้นจาก 3 ไบต์ขึ้นไป

ประสิทธิภาพโหมดไบนารีของ DotCode
จำนวนไบต์ ต้องใช้รหัสคำ ต้องใช้รหัสคำที่มีตัวล็อคและตัวส่งคืน ต้องใช้รหัสคำสั่งของกะการทำงานบน
1242
2354
3466
4578
56810

การเข้ารหัส ECI

DotCode สามารถเข้ารหัส ตัวบ่งชี้ ECIได้สองวิธี: [ 2 ] : 5.2.1.2

  • ในโหมด Binary Latch (ดูรายละเอียดด้านบน);
  • ด้วยตัวอักษร FNC2

FNC2 ในตำแหน่งใดๆ ยกเว้นตำแหน่งสุดท้ายของสัญญาณข้อมูล จะส่งสัญญาณการแทรกซีเควนซ์ ECI – "\nnnnnn" ซึ่งแทนค่าระหว่าง 000000 ถึง 811799 โดยค่าเหล่านี้สามารถเข้ารหัสได้ด้วยรหัสคำ 1 หรือ 3 คำ:

  • ในกรณีที่รหัสคำถัดไป < 40 จะเข้ารหัสค่า ECI 000000 เป็น 000039 โดยตรง
  • มิฉะนั้น รหัสคำสามคำถัดไปที่มีค่าเป็น A, B และ C จะเข้ารหัสค่า ECI เป็น.

การเข้ารหัส GS1

ตัวเลขสองหลักใดๆ ในตำแหน่งรหัสคำแรกจะระบุสัญลักษณ์ที่เข้ารหัสแบบ GS1 (ตรงข้ามกับรหัส 128 ) ในกรณีที่สัญลักษณ์ที่มีตัวเลขสองหลักในตำแหน่งรหัสคำแรกจะต้องถูกถอดรหัสเป็นข้อมูลทั่วไป จะต้องแทรก FNC1 (ละเว้นในข้อความที่ถอดรหัสแล้ว) ในตำแหน่งของรหัสคำแรก[ 2 ] : 5.2.1.2 FNC1 ในตำแหน่งอื่นที่ไม่ใช่ตำแหน่งแรกจะทำงานเป็นตัวแยกตัวระบุแอปพลิเคชัน GS1 และถอดรหัสเป็นอักขระ GS (ค่า ASCII 29)

รหัสคำ 100 ในชุดรหัส C เข้ารหัสแอปพลิเคชัน GS1 AI (17) [ 5 ]รหัสคำ 3 คำถัดไปคือวันหมดอายุและแทรก GS1 AI (10) ก่อนถอดรหัสรหัสคำอื่นๆ: (100)(24)(12)(30)(56)(64) -> 17241230105664

โหมดมาโคร

รหัสคำข้อมูลบางส่วน 97 – 100 ในตำแหน่งข้อมูลนำในชุดรหัส B สามารถเข้ารหัส “Macros” ได้[ 17 ] [ 2 ] : 5.2.1.1 ในตำแหน่งอื่น ๆ จะเข้ารหัสสัญลักษณ์ ASCII: (Latch B)(HT) -> [)>RS05GS … RSEoT (Shift B)(HT) -> [)>RS05GS … RSEoT

รหัสชุด DotCode Code Set B รหัสคำแบบสองฟังก์ชัน
รหัสลับ ในตำแหน่งข้อมูลแรก ในตำแหน่งข้อมูลถัดไป
ชาร์ เอเอสซีไอ
97[)>RS05GS ... RSEoTเอชที09
98[)>RS06GS ... RSEoTเอฟเอส28
99[)>RS12GS ... RSEoTจีเอส29
100[)>RSxx ... EoT โดยที่ตัวเลขสองหลัก “xx” เป็นค่าระหว่าง 00 ถึง 99อาร์เอส30
1. การขยาย "มาโคร" เหล่านี้ประกอบด้วยส่วนหัวและส่วนท้ายสำหรับข้อมูล2. ในการเข้ารหัส HT, FS, GS หรือ RS ในตำแหน่งข้อมูลแรก ให้ใช้ชุดรหัส A 3. การขยายมาโครสำหรับรหัสคำ 100 จงใจละเว้น GS จากส่วนหัวและ RS จากส่วนท้าย เนื่องจากค่าเหล่านี้อาจไม่ถูกต้องสำหรับค่า "xx" บางค่า อย่างไรก็ตาม อาจยังคงเข้ารหัส GS และ/หรือ RS ได้ตามต้องการ

การต่อเติมแบบมีโครงสร้าง

DotCode สามารถสร้างสัญลักษณ์ผสมได้ โดยที่ข้อมูลจากสัญลักษณ์ DotCode หลายตัวสามารถรวมกันได้ในเชิงตรรกะ สามารถทำได้โดยใช้สัญลักษณ์ FNC2 ในตำแหน่งข้อมูลสุดท้าย เมื่อ FNC2 อยู่ในตำแหน่งข้อมูลสุดท้าย[ 2 ] : 5.2.1.2 อักขระข้อความสองตัวก่อนหน้า ตัวเลขและตัวอักษรพิมพ์ใหญ่ตามลำดับ 1 ถึง 9 จากนั้น A ถึง Z (สำหรับค่า 10 ถึง 35) จะถูกใช้เป็น "m" และ "n" เพื่อระบุตำแหน่งของข้อความนี้ในลำดับ "m จาก n" ตัวอย่างเช่น สัญลักษณ์ที่มีข้อความลงท้ายว่า "4 B FNC2" จะเป็นสัญลักษณ์ที่ 4 จาก 11 สัญลักษณ์ที่ประกอบกันเป็นข้อความทั้งหมด

การเข้ารหัสโหมดพิเศษ

FNC3 ในตำแหน่งรหัสคำแรกบ่งชี้ว่าข้อความ[ 2 ] : 5.2.1.2 เป็นคำสั่งสำหรับการเริ่มต้นหรือการตั้งโปรแกรมใหม่ของเครื่องอ่านบาร์โค้ด

FNC3 หากอยู่ในตำแหน่งอื่นใดนอกจากตำแหน่งแรก แสดงว่าข้อความที่เข้ารหัสจะต้องถูกแยกออกเป็นสองข้อความที่แตกต่างกันในเชิงตรรกะ (ก่อนและหลัง)

การเติมข้อมูล

ความจุของรหัสคำสัญลักษณ์ DotCode คือ:

ความจุของรหัสข้อมูลสัญลักษณ์ DotCode คือ:

ด้วยวิธีนี้เราจำเป็นต้องเติมข้อมูลรหัสคำในกรณีที่มีพื้นที่ว่าง มีกฎสองข้อ: [ 2 ] : 5.2.3

  • โหมดไบนารีต้องสิ้นสุดด้วย Latch to Code Set A (รหัสคำ 109)
  • ในโหมดอื่นๆ ต้องใช้รหัสคำ 106 (Latch to Code Set C / Latch to Code Set B)

ดูเพิ่มเติม

  • สิทธิบัตร DotCode
  • โปรแกรมสร้าง DotCode ฟรี
  • โปรแกรมอ่าน DotCode ฟรี
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=DotCode&oldid=1344842270 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ ดอทโค้ด

DotCode เป็น บาร์โค้ดเมทริกซ์สองมิติ (2D) ที่คิดค้นขึ้นในปี 2551 [ 1 ] โดย Hand Held Products เพื่อใช้แทน Code 128 ที่ล้าสมัย ในขณะนี้...

ประวัติและมาตรฐาน

บาร์โค้ด DotCode ถูกคิดค้นขึ้นในปี 2008 [ 1 ] โดย ดร. แอนดรูว์ ลองแอครี จาก บริษัท Hand Held Products และได้รับการกำหนดมาตรฐานในปี 2009 [ 6 ] โดย AIM ในชื่อ “ข้อกำหนดสัญลักษณ์บาร์โค้ด - DotCode” [ 7 ] ในปี 2019 DotCode ได้รับการทบทวนในชื่อ “ข้อกำหนดสัญลักษณ์...

แอปพลิเคชัน

บาร์โค้ด DotCode สามารถใช้งานได้ในลักษณะเดียวกับ Code 128 หรือบาร์โค้ดเมทริกซ์ (2D) ใดๆ ในขณะนี้ ส่วนใหญ่ใช้เพื่อเข้ารหัสข้อมูล GS1 ใน อุตสาหกรรมยาสูบ [ 10 ] [ 11 ] เครื่องดื่มแอลกอฮอล์และเครื่องดื่ม ไม่มี แอลกอฮอล์ [ 12 ] ยา และร้านขายของชำ...

การออกแบบบาร์โค้ด

ดอทโค้ดแสดงข้อมูลในโครงสร้างสี่เหลี่ยมผืนผ้า ซึ่งประกอบด้วยจุดกลมสีดำและช่องว่างสีขาวบนพื้นหลังสีขาว หรือจุดกลมสีขาวบนพื้นหลังสีดำ ดอทโค้ดไม่มีรูปแบบตัวค้นหาเหมือนบาร์โค้ด 2 มิติอื่นๆ และต้องตรวจจับด้วย อัลกอริธึมการตรวจจับกลุ่ม ข้อมูลที่ช้า เช่น...