การสื่อสารผ่านพอร์ต RS485 ใช้คำสั่ง IVRD

Sdílet
Vložit
  • čas přidán 7. 03. 2023
  • ขอแก้ไขข้อผิดพลาด ดังนี้นะครับ
    00:15:30 คำสั่ง MOV H20 D8129 เปลี่ยนเป็น MOV K20 D8129
    00:16:06 คำสั่ง IVRW ผิดนะครับ ที่ถูกต้องคือคำสั่ง IVWR
    00:24:12 คำสั่ง MOV H20 D8129 เปลี่ยนเป็น MOV K20 D8129
    00:28:04 คำสั่ง MOV H20 D8129 เปลี่ยนเป็น MOV K20 D8129
    00:30:31 คำสั่ง MOV H20 D8129 เปลี่ยนเป็น MOV K20 D8129
    #### ขออภัยในความผิดพลาดด้วยนะครับ
  • Věda a technologie

Komentáře • 77

  • @Zee8ee
    @Zee8ee Před 5 měsíci +1

    огромное спасибо за уроки,хоть я диалога не понимаю,но интуитивно по видео.. все таки разобраться можно)).желаю побольше подписчиков и успехов в этом нелегком деле

  • @zav-cj4xx
    @zav-cj4xx Před 4 měsíci +1

    Спасибо огромное за обстоятельное объяснение. Всё четко и понятно без воды

  • @HeangWichara
    @HeangWichara Před 10 měsíci +1

    พี่สอนดีมากครับ

  • @thipwimonphaphachonlathip1120

    ขอบคุณครับ

  • @suriyat8773
    @suriyat8773 Před rokem +1

    Thank

  • @jaysarawut6606
    @jaysarawut6606 Před 3 měsíci +1

    จั้ม Rs485 ไปใช้กับ อุปกรณ์ตัวอื่นที่ไม่ใช่ตัวเดียวกันได้ไหมครับ อาจารย์

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před 3 měsíci

      ได้ครับแต่ต้องกำหนด lD ของอุปกรณ์ครับ

  • @MrKornritMalee
    @MrKornritMalee Před rokem +1

    set rs485 plcเป็นของ fx3u จะต้อง set b13-15 ยังไงครับ ดูตารางไม่เข้าใจครับ อาจารย์

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před rokem

      หมายถึง PLC Board ใช่ไหมครับ ถ้าใช่มันเป็นการเซตการเชื่อมต่อของ Protocol ครับ โดยผู้ผลิตได้ให้คำจำกัดความการเซต b15-b12 ดังนี้ครับ
      0,0,0,0 คือ เมื่อต้องการให้ PLC Board เป็น slave เมื่อใช้ Mitsubishi FX2N protocol
      0,1,0,0 คือ เมื่อต้องการให้ PLC Board เป็น slave เมื่อใช้ MODBUS RTU
      1,0,0,0 คือ เมื่อต้องการให้ PLC Board เป็น Master เมื่อใช้ MODBUS RTU และต้องการใช้คำสั่ง IVRD, IVWR instruction
      1,1,0,0 คือ เมื่อต้องการให้ PLC Board เป็นการสื่อสารแบบอิสระ และต้องการใช้คำสั่ง RS instruction, CCD check
      หากหมายถึง PLC FX3U แท้ รบกวนเข้าไปดูในคลิปการสื่อสารผ่าน Modbus Protocol ที่ผมทำไว้ให้แล้วครับ

  • @pipatphongnuphan2974
    @pipatphongnuphan2974 Před rokem +1

    ขอบคุณอาจารย์ที่แบ่งปันครับความรู้ครับ❤❤❤❤

  • @user-ob6gi7oh5j
    @user-ob6gi7oh5j Před 11 měsíci +1

    ครับอาจารย์ผมจะสอบถามผมจะนำไปควบคุมโบเวอร์

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před 11 měsíci

      สู้ๆครับ....ผมเป็นกำลังใจให้ครับ

  • @snoparat
    @snoparat Před rokem +2

    ถ้าเรามี Temperature senor 3 ตัว เราหาค่าเฉลี่ยทำได้หรือไม่ครับ ทำอย่างไรครับอาจารย์ ขอบคุณครับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před rokem +2

      ทำได้ครับ ใช้คำสี่ง mean หาดูในคลิปช่องผมครับ ชื่อว่า คำสั่ง mean ครับ ผมทำเป็นแนวทางให้ดูแล้วครับ

    • @snoparat
      @snoparat Před rokem +1

      @@user-fu9ox6pb9h ปรึกษาครับ เนื่องจากผมซื้อมา 2 ตัว แต่ผมไม่เข้าใจการเขียนที่ให้มันสามารถดูค่าได้ 2 ตัวต้องเปลี่ยนแก้ไขตรงไหนครับ รวมถึงหากต้องการให้เป็นค่าทศนิยม ใช้คำสั่งอะไรครับ ขอบคุณครับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před rokem

      ต้องตั้งค่า id ให้มันครับว่าจะให้ตัวไหนเป็น id1 หรือ id2 แล้วก็เขียนสเต็ปผลัดกันอ่านค่าออกมา...ส่วนต้องการเป็นเลขทศนิยม ต้องแปลงเป็น ทศนิยมแล้วหารเอาครับ เช่น หาร 10.000 เป็นต้น แต่หากไม่อยากแปลงเป็นทศนิยม ก็หาร 10 แล้วเอาค่าผลหารและเศษไปแสดง หรือง่ายสุดก็นำไปแสดงที่จอแสดงผลเลยครับ แล้วปรับเป็นทศนิยมที่ตัวจอแสดงผลครับ

  • @suttirakdrive5439
    @suttirakdrive5439 Před 2 měsíci +1

    อยากสอบถามครับ เราสามารถ ดึงค่า Float 32 จาก slave ผ่าน IVRD ได้ม่ยครับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před 2 měsíci

      ถ้าเป็นพีแอลซีบอร์ด.....ผมไม่เคยทดลองใช้ 32 บิต นะครับ แต่เดาว่าน่าจะใช้ไม่ได้กับคำสั่งนี้ IVRD นะครับ ลองดูได้นะครับอย่าเชื่อในสิ่งที่ผมพูดครับ ลองทำดูด้วยตนเองครับ

    • @suttirakdrive5439
      @suttirakdrive5439 Před 2 měsíci +1

      @@user-fu9ox6pb9h ผมได้ลองแล้วครับ ซึ่งติดปัญหาดึงข้อมูลไม่ได้ครับ slave คือ power meter PM2230 Schneider กลdata Type Float 32 ครับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před 2 měsíci

      ครับ...แสดงว่าเป็นไปตามที่คิดไว้ครับ....คือมันรับได้แค่ 16 บิต

  • @ohm_namdang5175
    @ohm_namdang5175 Před 5 měsíci +1

    ถ้าเป็น N4AIA04 เขียนคำสังอ่านค่ายังไงครับ ผมลองแล้วไม่ได้เลยครับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před 5 měsíci

      คล้ายๆกันเนียละครับ....
      อันดับแรกตรวจสอบก่อนเลยครับว่าตั้งค่าบอร์ดเรทถูกต้องเหมือนกับของพีแอลซีไหม ลำดับต่อไปตรวจสอบครับว่า N4AIA04 ใช้ ID ที่เท่าไร แล้วที่สำคัญมากๆเลยคือ คุณต้องการดึงค่าอะไรของ N4AIA04 หมายถึงจะทำอะไรกับมันครับ อ่านเป็นบิต หรืออ่านเป็นเวอร์ด ทุกอย่างที่ผมพูดมาทั้งหมดอยู่ในคู่มือของ N4AIA04 ต้องทำความเข้าใจเกี่ยวกับการสื่อสารก่อนครับ เมื่อเราเข้าใจแล้ว เราก็จะทำการควบคุมการสื่อสารของมันได้ครับ
      คำถามผมคือ ท่านเข้าใจหลักการในการสื่อสารดีแล้วใชหรือไม่ ถ้าไม่ใช่แค่ต้องการทำตาม.....ก็ยากละครับ (เพราะไม่รู้จะเริ่มอะไรอย่างไรทำอย่างไรต่อ).... ก่อนอื่นทำความเข้าใจกับมันก่อนครับ
      แต่ถ้าแค่อยากทดลองทำตามผมท่านก็ต้องไปเปิดเดต้าชีทตามที่ผมบอกครับ

  • @GD-bc9rk
    @GD-bc9rk Před 4 měsíci +1

    อาจารย์ครับ หากใช้ slave 10 ถึง 20 ต้องเขียนยังไงบ้างครับ พอดี slave10 ใช้ H1004 ไม่ได้ครับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před 4 měsíci +1

      ใช้เป็นเลขฐาน 16 ครับ

    • @GD-bc9rk
      @GD-bc9rk Před 4 měsíci +1

      @@user-fu9ox6pb9h ขอบคุณครับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před 4 měsíci

      ยินดีครับ

  • @user-es5ki6rl7e
    @user-es5ki6rl7e Před rokem +1

    รบกวนสอบถามครับอาจารย์ ถ้าค่าที่เราไปอ่านมาผ่าน rs485 มีค่า 80000 เราจะเอาตัวแปรอะไรมารับใน plc หรอครับ ขอบคุณครับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před rokem +1

      Data regidter ขนาด 32 bit ครับ ตัวไหนก็ได้ครับ

    • @user-es5ki6rl7e
      @user-es5ki6rl7e Před rokem +1

      ใช้ ivrd อ่าน 2 แอดเดรส ยังไงหรอครับ ของผมอ่านมา แอดเดรสเดียว 😢

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před rokem

      ต้องไปตั้งค่า id ให้อีกตัวเป็นตัวที่ 2 ครับ ทำผ่านโปรแกรม modbuspoll ครับ

    • @user-es5ki6rl7e
      @user-es5ki6rl7e Před rokem

      แบบว่าเราอ่าน slave ตัวเดียว แต่อ่านมา 2 แอดเดรสครับอาจารย์ พอดีข้อมูลมันใหญ่ ใช้ 32 bit ครับ แต่ไม่รู้จะเขียน ivrd อย่างไรครับ😢

  • @jedsadasaijai8511
    @jedsadasaijai8511 Před 2 měsíci +1

    สวัสดีครับ
    ลองทำตาม program แล้วอ่านค่าได้ 0 ทั้ง 2 address เลยครับ
    ไม่ทราบว่าน่าจะเกิดจากสาเหตุใดได้บ้างครับ ?

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před 2 měsíci +1

      ถ้ามันอ่านค่าได้ 0 แสดงว่ามันอ่านค่าไม่ได้เลยครับ มีหลายสาเหตุครับอาจจะต้องไล่ดูครับ เช่น ID ถูกต้องไหม บอร์ดเรท ตรงไหม พีแอลซีไม่น่าจะมีปัญหาครับเพราะเรากำหนดเองได้ทั้งหมด แต่อุปกรณ์ที่จะอ่านเราต้องตรวจสอบก่อนครับว่าถูกตั้งค่าไว้เป็น ID ที่เท่าไร และถูกกำหนดบอร์ดเรทไว้ที่เท่าไร ส่วนโปรแกรมที่ใช้ตรวจสอบก็มีหลายโปรแกรมเลยครับ เช่น Modbus Poll เป็นต้น ลองดูใหม่นะครับ

    • @jedsadasaijai8511
      @jedsadasaijai8511 Před 2 měsíci +1

      @@user-fu9ox6pb9h ลองปรับ baud rate ให้ต่ำลงเป็น 4800 อ่านค่าได้ที่ address 02 แต่ได้ค่าเป็นลบ ส่วน address 01 ยังอ่านได้ 0 เหมือนเดิม
      เป็นไปได้ไหมว่า sensor จะพัง (แต่เพิ่งแกะกล่องเลยนะครับ ซื้อมา 2 ตัว)
      หรือเป็นเพราะว่า sensor ไม่ถูกรุ่น (สติกเกอร์ที่ติดไว้ เป็น MD02 ไม่ใช่ XY-MD02)

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před 2 měsíci +1

      ง่ายๆครับตรวจสอบว่าเสียหรือไม่เสีย จากซอฟแวร์ก่อนเลยครับ ส่วนเรื่องบอร์ดเรท ผมว่าไม่น่าจะใช่ประเด็นครับ ขอให้มันครงกันครับทั้งมาสเตอร์และสเลฟ ครับ

  • @autosunday2045
    @autosunday2045 Před rokem +1

    อาจารย์ครับ เราสามารถเอาค่า d0 หรือ d2 ไปใช้คำสั่งเปรียบเทียบเพื่อสั่งให้เอาต์พุต y ทำงานได้เลยมั้ยครับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před rokem +1

      ได้เลยครับ....แต่ถ้าจะให้ดีก็อาจจะใช้คำสั่งทางคณิตศาสตร์มาช่วยในการแปลงข้อมูลก่อนนำไปเปรียบเทียบครับ อย่างเช่นในคลิป ค่าความชื้นอยู่ที่ 529 คือหากคิดเป็นเปอร์เซ็นต์คือ 52.9 % อาจจะต้องแปลงเลขก่อนครับ หากไม่แปลงก็ทำได้นะครับ เช่น ถ้าเราต้องการให้รดน้ำที่ความชื้นต่ำกว่า 35% เราก็ใช้คำสั่งเปรียบเทียบกับเลข 350 ได้เลยครับ

    • @autosunday2045
      @autosunday2045 Před rokem +1

      @@user-fu9ox6pb9h ขอบคุณมากครับอาจารย์

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před rokem

      ยินดีครับ

    • @autosunday2045
      @autosunday2045 Před rokem +1

      @@user-fu9ox6pb9h อาจารย์ครับขอสอบถามนอกเรื่องนี้หน่อยครับ ถ้าเราจะตั้งเวลาโดยใช้การตั้งเวลาให้พัดลมทำงานหมุนขวา 2ชม.หมุนซ้าย2ชม.สลับไปตลอด ต้องใช้คำสั่งแบบไหนครับที่สั่งได้ทีละ2ชม.เลยมีมั้ยครับ ขอบคุณครับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před rokem

      มีครับ ใช้พวก time Special register ได้เลยครับ หรือจะใช้คำสั่ง TRD ก็ได้ครับ มีในคลิปที่ผมแนะนำอยู่ครับ พิมพ์ว่าคำสั่ง TRD ครับ

  • @user-zt5md3cq2e
    @user-zt5md3cq2e Před rokem +1

    อาจาร์ครับ มีช่องทางการติดต่อทาง line ไหมครับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před rokem +1

      เดี๋ยวสร้างเสร็จแล้วจะแจ้งครับ หากเร่งด่วนติดต่อผ่านทางเมลล์ครับ

    • @user-ko2nt3hl1k
      @user-ko2nt3hl1k Před rokem +1

      ขอเมลล์อาจาร์หน่อยครับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před rokem

      dschaisamorn@gmail.com

  • @user-vp1hk9xd9d
    @user-vp1hk9xd9d Před rokem +1

    Slave1 กับ slave2 ต่อร่วมกัน สลับกันอ่านค่าไม่ได้หรอครับอาจารย์

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před rokem +1

      ได้ครับ.....แต่ต้องสั่งการโดย master นะครับ

    • @user-vp1hk9xd9d
      @user-vp1hk9xd9d Před rokem +1

      @@user-fu9ox6pb9h ผมต่อตัวแรกวัดค่าอุณหภูมิ ความชื้นปกติ พอเอาตัวที่2 มาต่อร่วมกับตัวที่1 ตัวเลขวิ่งติดลบ เลขขึ้นไป5 หลักเลยครับ ผมเขียนคำสั่งที่อาจารย์เขียนเลยครับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před rokem +1

      ไปตั้งค่าตัวที่สองให้เป็น ID 2 หรือยังครับ ตัวที่สองต้องตั้งไอดีให้เขาด้วยนะครับ ลองตรวจสอบดูครับว่า id เป็นตัสที่สองไหมครับ ใช้โปรแกรม modbus poll ตรวจดูก็ได้ครับ

    • @autosunday2045
      @autosunday2045 Před rokem +1

      ​@@user-fu9ox6pb9h เราsetตัวที่2ให้เป็น ID2 จากตรงไหนได้บ้างครับ ในคำสั่ง IVRD H2O4 ก็ไม่ได้ครับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před rokem

      โปรแกรม modbus poll หรือ modscan ลองดูครับ

  • @RSM06567
    @RSM06567 Před rokem +1

    ผมอยากรู้ว่าเซนเซอร์ที่ส่งค่าเป็น float เราจะใช้ฟังชั่นอะไรในการอ่านคับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před rokem +1

      ใช้คำสั่ง demov ในการย้ายค่าครับ

    • @RSM06567
      @RSM06567 Před rokem +1

      @@user-fu9ox6pb9h บรรทัดไหนที่เป็น mov ให้ใช้ dmov หมดเลยหรอคับ

    • @RSM06567
      @RSM06567 Před rokem +1

      @@user-fu9ox6pb9h ในช่องพี่มีวิดิโอสอนการไหมคับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před rokem

      หมายถึงอะไรครับ...ลองศึกษาการใช้คำสั่ง mov/dmov ก่อนครับว่าต่างกันอย่างไร...หากเปลี่ยนมันก็อาจจะกินพื้นที่ได้ครับ

    • @user-fu9ox6pb9h
      @user-fu9ox6pb9h  Před rokem

      ช่องผมยังไม่มีการสอน demov ครับ ลองดาวน์โหลดคู่มือมาศึกษาดูครับ.....คู่มือหาได้จาก google ครับ

  • @user-xn5fi5qp3r
    @user-xn5fi5qp3r Před rokem +1

    ขอบคุณครับ