Multilingual

หน้าจอ Basic Panel นั้นสามารถรองรับการทำหน้าจอให้แสดงผลแบบหลายภาษาได้อยู่แล้ว ซึ่งทำให้ข้อจำกัดทางภาษาของผู้ใช้งานลดลงได้  การทำหน้าจอแบบหลายภาษาในยุคเริ่มต้นของ HMI นั้นจะทำด้วยการสร้างหน้าจอแต่ละภาษาแยกหน้ากัน แล้วทำการเปลี่ยนหน้าจอไปหน้าหน้าจอของแต่ละภาษาเอาเอง

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

โดยการตั้งค่าและการใช้งาน Multilingual มีขึ้นตอนการตั้งค่า การใช้งาน และการประยุกต์ใช้งานดังนี้

การตั้งค่าให้ใช้งาน Multilingual

  1. ที่หน้าต่าง Project tree ให้เราไปเลือกในส่วนของ Languages & resources -> Project languages ให้เราไปเลือกภาษาที่ต้องการเปลี่ยนเพิ่มขึ้นมา ซึ่งค่า default ภาษาอังกฤษจะถูกตั้งค่าเอาไว้ภาษาเดียว
    multilingual_01.png
  2. ในส่วนของ Runtime settings ในอยู่ภายใน project ของ HMI ให้เราไปที่ Language & font แล้วทำการ enable ภาษาที่เราได้เพิ่มจากขั้นตอนก่อนหน้านี้ด้วย  ถ้าหากเราไม่ enable ในส่วนนี้ การเปลี่ยนภาษาก็ไม่สามารถทำได้เช่นกัน
    multilingual_02.png

 

การตั้งค่าในการแสดงผลหลายภาษาใน Text

  1. การตั้งค่าให้ Text สามารถเปลี่ยนภาษาได้ ให้เราวาง Text ปกติแล้วพิมพ์ข้อความภาษาอังกฤษที่ต้องการตามปกติลงไปก่อน
    multilingual_03.png
  2. จากนั้นให้เราไปที่ Properties ของ Text ตัวนั้น แล้วไปเลือก tab ที่ชื่อว่า Texts จะพบว่าจะมี column ที่เป็นภาษาไทยแสดงอยู่ ให้เราพิมพ์ข้อความภาษาไทยที่สอดคล้องกับข้อความภาษาอังกฤษที่เราได้พิมพ์ไว้ก่อนหน้านี้ลงไป
    multilingual_04.png

 

การตั้งค่าในการแสดงผลหลายภาษาใน Button 2 สถานะ

  1. สำหรับตัวอย่างนี้ เราจะยกตัวอย่างกรณีที่เราต้องการวางปุ่มกดแบบที่แสดงสถานะ ON/OFF ในตัว ซึ่งกรณีนี้ให้เราทำการสร้างปุ่มกด และ Properties ของปุ่มกดตามปกติ
  2. ให้ทำการสร้าง Text List โดยเลือก Selection เป็นแบบ Value/Range เพราะสถานะของปุ่มกดมีค่าเป็น 0 กับ 1 จากนั้นให้เรากำหนดค่า 0 กับ 1 นี้ในตาราง Text List entries และแต่ละสถานะ ON/OFF นั้นให้เราเลือก Properties -> Texts เพื่อพิมพ์ภาษาไทยที่สอดคล้องกับภาษาอังกฤษที่ต้องการ
    multilingual_05
    multilingual_06
  3. กลับมาที่ปุ่มกดที่ต้องการอีกรอบ ให้เราเลือก Label เป็นแบบ Text lists เพื่อ link ไปหา Text list ที่เราได้สร้างขึ้นมา
    multilingual_07.png

 

การสร้างปุ่มเพื่อเปลี่ยนภาษา

การสร้างปุ่มเพื่อเปลี่ยนภาษาจริงๆแล้วมีหลายวิธี ในหัวข้อนี้เราจะอธิบายการสร้างปุ่มเปลี่ยนภาษาแบบปุ่มกดตรงๆกับการเปลี่ยนภาษาโดยไป link กับ tag ที่ต้องการ

การเปลี่ยนภาษาแบบวางปุ่มตรงๆ

  1. ทำการวางปุ่มเพื่อเปลี่ยนภาษามาก่อน (ในที่นี้ขอวางปุ่มปกติแบบไม่มีการตกแต่งความสวยงาม)
    multilingual_08.png
  2. ที่ปุ่มเปลี่ยนเป็นภาษาอังกฤษ ให้เราไปตั้ง Properties -> Events แล้วเลือกเป็นแบบ SetLanguage แล้วให้เลือก Runtime language เป็นภาษาอังกฤษ
    multilingual_09
  3. ที่ปุ่มเปลี่ยนเป็นภาษาไทย ให้เราไปตั้ง Properties -> Events แล้วเลือกเป็นแบบ SetLanguage แล้วให้เลือก Runtime language เป็นภาษาไทย
    multilingual_10.png
    สังเกตว่าเมื่อเราเปลี่ยนรูปแบบเป็น Runtime language แล้ว มีมีภาษาให้เราเลือกตามที่เราได้ตั้งค่าเอาไว้ตั้งแต่แรกว่าเราได้ enable ภาษาอะไรไว้บ้าง
    multilingual_11.png
  4. อย่าลืมสร้างภาษาให้กับปุ่มเปลี่ยนภาษาแต่ละตัวด้วย

    This slideshow requires JavaScript.

  5. เมื่อทดสอบด้วยการทำ simulation จะเห็นว่าภาษามีการเปลี่ยนไปตามการกดปุ่มเปลี่ยนภาษา

    This slideshow requires JavaScript.

    This slideshow requires JavaScript.

การเปลี่ยนภาษาแบบ link กับค่าใน tag

การเปลี่ยนภาษาแบบนี้เหมาะกับการที่เราต้องการที่จะให้ PLC สามารถเปลี่ยนภาษาที่ฝั่งจอ HMI ได้โดยดูจากค่าใน tag นั้นๆ ในตัวอย่างนี้ขอสมมติ tag นั้นให้เป็น internal memory ของจอก่อน แต่ของจริงผู้ใช้งานควรใช้ tag นี้เป็น tag ของ PLC

  1. สมมติว่าเราสร้าง I/O field ขึ้นมาแล้วไป link กับ tag ที่ชื่อว่า Tag_Change_Language  (อย่าลืมว่าในที่นี้เราใช้เป็น internal tag ของจอเพื่อความง่าย แต่ของจริงๆ tag นี้ควรเป็น tag จาก PLC)
    multilingual_18.png
  2. ที่ Project tree ให้เราไปเลือกหัวข้อ HMI tags แล้วให้ไปเลือก Tag_Change_Language ที่เราได้สร้างไว้  จากนั้นเลือก Properties ของ tag ตัวนี้  ที่หัวข้อ Events ให้เราเลือก Value change และเลือก Settings -> SetLanguage ดังรูป
    multilingual_19
  3. เปลี่ยนรูปแบบการเปลี่ยนภาษาเป็น HMI_Tag ดังรูป
    multilingual_20.png
  4. จากนั้นให้เลือก Tag_Change_Language ลงไปเพื่อเป็นตัวเปลี่ยนภาษา
    multilingual_21.png
  5. เพียงเท่านี้ Tag_Change_Language ก็จะเปลี่ยนภาษาได้แล้ว โดยสัมพันธ์จากค่าภายใน tag ตัวนี้นั่นเอง ซึ่งถ้าเราย้อนกลับไปดูที่ Runtime settings -> Language & font เราจะเห็น column Order ที่มีค่าเป็น 0 กับ 1 นั่นเอง นั่นหมายความว่าถ้า Tag_Change_Language มีค่าเป็น 0 จะแสดงผลภาษาอังกฤษ และถ้า Tag_Change_Language มีค่าเป็น 1 จะแสดงผลภาษาไทย
    multilingual_02
  6. เมื่อทดสอบด้วย simulation จะเห็นว่าภาษาจะเปลี่ยนถามค่าของ Tag_Change_Language

    This slideshow requires JavaScript.

การเปลี่ยนภาษาแบบใช้ drop down menu

การเปลี่ยนภาษาแบบใช้ drop down menu นั้น ให้เราทำการตั้งค่า “การเปลี่ยนภาษาแบบ link กับ tag” ในขั้นตอนที่แล้วให้เรียบร้อยก่อน ดังนั้นในกรณีนี้เราจะถือว่าเราได้ทำการตั้งค่า “การเปลี่ยนภาษาแบบ link กับ tag” เสร็จเรียบร้อยแล้ว และเราจะใช้ตัวแปร Tag_Change_Language ตามขั้นตอนที่แล้วไปเลย

  1. ให้สร้าง Text lists ตัวใหม่ขึ้นมา ในที่นี้เราตั้งชื่อเป็น Text_List_Change_Language และเลือก Selection เป็นแบบ Value/Range   และทำการตั้งค่า 0 เป็น English และ 1 เป็น Thaiและอย่าลืมตั้งคำในแต่ละภาษาจาก tab Texts ที่อยู่ใน Properties ของแต่ค่า Value ด้วย

    This slideshow requires JavaScript.

  2. กลับมาที่หน้าจอ ให้เราวาง part I/O field ที่หน้าจอ  และทำการ link Text list ไปยังตัว Text_List_Change_Language ที่ได้สร้างไว้  และทำการ Link Process tag ไปยัง Tag_Change_Language ที่ได้สร้างไว้แล้วmultilingual_26.png
  3. ดังนั้นจะเห็นว่าค่าใน Text List ที่เลือกภาษาอังกฤษหรือไทยนั้น จะไปกระทบกับค่าใน Tag_Change_Language ให้เปลี่ยนค่าเป็น 0 หรือ 1  และเราได้ตั้งค่าให้เมื่อ Tag_Change_Language มีการเปลี่ยนแปลงค่่าจะทำการ SetLanguage จากขั้นตอน “การเปลี่ยนภาษาแบบ link กับ tag” เรียบร้อยแล้ว จึงไม่ต้องตั้งอะไรเพิ่มในหัวข้อนี้อีก
  4. เมื่อทดสอบด้วยการทำ simulation จะเห็นว่าเราสามารถเปลี่ยนภาษาจาก drop down menu ได้แล้ว

    This slideshow requires JavaScript.

     

Important Note for Thai language

จากการทดสอบพบว่าใน software version 14 SP1 เป็นต้นไป จะสามารถใช้ภาษาไทยได้ (แสดงผลเป็นตัวสี่เหลี่ยม) ซึ่งเป็นปัญหาที่ firmware บางประการ และยังแก้ไขไม่ได้แม้ว่าจะใช้ software ตัวล่าสุดคือ Version15 แล้วก็ตาม  วิธีแก้ปัญหาคือเวลาสร้างจอให้เราเลือก firmware version เป็น 14.0.0.0 ก็จะสามารถใช้ภาษาไทยได้multilingual_29.png

 

 

 

 

 

 

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s