หน้าแรกคู่มือPLCเทคนิคขั้นสูงคำสั่ง FMOV ใน Samkoon PLC - Move ข้อมูลหลายตัวแปรพร้อมกัน

บทที่ 7 จาก 17 ใน เทคนิคขั้นสูง

PLCเริ่มต้น · Beginner2 นาที

คำสั่ง FMOV ใน Samkoon PLC - Move ข้อมูลหลายตัวแปรพร้อมกัน

ใช้คำสั่ง FMOV และ FMOVD ใน SamSoar2022 ย้ายค่าเดียวไปใส่ D หลายตัวด้วยคำสั่งเดียว แทนการเขียน MOV ทีละบรรทัด พร้อมผลทดสอบใน Simulator

คำสั่ง FMOV ย้ายค่าจาก Input ไปใส่ D หลายตัวติดกันในคำสั่งเดียว เช่น FMOV D0 D1000 K10 จะใส่ค่า D0 ลง D1000 ถึง D1009 ส่วน FMOVD ทำแบบ Double Word ทีละ 2 register

อัพเดทล่าสุด: 26 ตุลาคม 2569

ชุดอุปกรณ์สำหรับบทความนี้

ราคาชุดอุปกรณ์

฿2,590

ปัญหา: MOV ค่าเดียวไปหลายตัวแปรต้องเขียนหลายบรรทัด

ถ้าใช้คำสั่ง MOV ย้ายค่า D0 ไปที่ D500 ถึง D509 ต้องเขียนคำสั่ง MOV ทั้งหมด 10 บรรทัด

MOV D0 D500
MOV D0 D501
MOV D0 D502
...
MOV D0 D509

SamSoar2022 มีคำสั่ง FMOV ที่รวบทั้งหมดนี้เหลือคำสั่งเดียว

รูปแบบคำสั่ง FMOV

FMOV  Input  Output  Number
ช่องความหมายตัวอย่างในคลิป
Inputค่าต้นทางD0
Outputตัวแปรเริ่มต้นปลายทางD1000
Numberจำนวนตัวแปรที่จะใส่ค่าK10

FMOV D0 D1000 K10 จะย้ายค่า D0 ไปใส่ตั้งแต่ D1000 จำนวน 10 ตัว คือ D1000 ถึง D1009

FMOV — ใส่ค่า D0 ลง D1000-D1009
เมื่อ M1 ON ค่าใน D0 จะถูกใส่ลง D1000 ถึง D1009
N0
M1 ON → D1000..D1009 = D0
M1FMOVD0, D1000, K10
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

FMOVD — แบบ Double Word

ถ้าต้องการย้ายค่าแบบ Double Word (32-bit) ใช้คำสั่ง FMOVD ซึ่งใส่ค่าทีละ 2 register

FMOVD — ใส่ค่า D0 (32-bit) ลง D2000-D2019
เมื่อ M2 ON ค่า Double Word ใน D0 จะถูกใส่ลง D2000, D2002, ... D2018
N0
M2 ON → D2000, D2002, ... D2018 = D0 (DWORD)
M2FMOVDD0, D2000, K10
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

ทดสอบใน Simulator

  1. กด Simulate แล้วกด Start
  2. เปิด Monitor ใส่ค่า D0 เป็น 123
  3. สั่ง FMOV ทำงาน (M1 ON) — D1000 ถึง D1009 มีค่าเป็น 123 ส่วน D1010 ยังเป็น 0 เพราะคำสั่งใส่ค่าแค่ 10 ตัว
  4. สั่ง FMOVD ทำงาน (M2 ON) — D2000, D2002, D2004 … มีค่าเป็น 123 กระโดดทีละ 2 ตัว
  5. FMOVD รับค่าขนาดใหญ่ได้ ลองใส่ D0 เป็น 100000 — D2000, D2002, … D2018 มีค่า 100000 (ตั้ง Datatype ใน Monitor เป็น DWORD) ส่วน D2020 ยังเป็น 0

ถ้าดู D2001, D2003 แบบ WORD ใน Monitor จะเห็นค่า 1 เพราะเป็น word บนของค่า 100000 แบบ 32-bit

สรุป

  • FMOV Input Output Number ใส่ค่าเดียวลงตัวแปร 16-bit หลายตัวติดกัน
  • FMOVD ทำแบบเดียวกันกับค่า 32-bit โดยใช้ตัวแปรทีละ 2 register
  • ช่วยลดคำสั่ง MOV ที่ต้องเขียนซ้ำหลายบรรทัดเหลือบรรทัดเดียว

บทถัดไป

วิธีกำหนดค่าเริ่มต้นเมื่อ PLC ติด

3 นาทีเริ่มต้น · Beginner