สร้างบอทกดปุ่มเมาส์คีย์บอร์ด อัตโนมัติจาก Arduino

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

อุปกรณ์

  1. Arduino Leonardo ที่ใช้ตัวนี้เพราะสามารถใช้คำสั่งส่งค่าเรียนแบบ Mouse, Keyboard ได้พวกรุ่นอื่นก็ทำได้ต้องลองหาข้อมูลดู แต่ผมแนะนำตัวนี้ใช้ได้แน่นอนครับ (*ที่ผมใช้จะเป็น Leonardo Pro micro มีขนาดเล็กกว่า แต่ขั้นตอนการเขียนเหมือนกันครับ)
  2. โปรแกรม Arduino IDE ใช้สำหรับโปรแกรมบอร์ดอาดูโน่ของเรา
  3. สวิตซ์ Switch กดติด-ปล่อยดับ ธรรมดาทั่วไปตัวเล็ก
  4. Resistor ตัวต้านทานค่า 100 โอห์ม และ 10K.โอห์ม

Special อุปกรณ์ทำบอท(เผื่อท่านไหนสนใจ)

  • Visual Studio Code สำหรับเขียนโปรแกรมภาษา Python (ผมจะพยายามอธิบายทีละบรรทัดให้เข้าใจได้นะครับ)
  • เครื่องคอมพิวเตอร์ที่ติดตั้ง Python IDE รุ่น 3.7+ หรือใหม่ล่าสุดเลยก็ได้ ไม่มีปัญหา
  • เกมที่จะนำมาเขียน บอท ในตัวอย่างขอยกตัวอย่างเกม Cabal, Ro เพื่อใช้ศึกษาการเขียนครับ
  • ***การเขียนนี้ไม่ได้เป็นการ แฮก แก้ไขดัดแปลง โกงค่า ใดๆเพียงแต่เขียนโปรแกรมให้ทำได้อย่างมนุษย์เท่านั้นนะครับ อาจจะแย่กว่ามนุษย์นะผมว่า ฮ่าๆๆ
สิ่งที่จะทดลองกันมีหัวข้อดังนี้ครับ [ยังไม่จบ-อัพเดทเรื่อยๆครับ]
  1. รู้จักโครงสร้างของ Arduino Board ก่อนที่จะลงมือใช้งานกันก่อน
  2. กดสวิตซ์ สั่งให้คลิกเมาส์ออกมาแบบ อัตโนมัติ
  3. กดสวิตซ์ สั่งให้พิมพ์ข้อความออกมาแบบ อัตโนมัติ
  4. กดสวิตซ์ สั่งให้เร่งและลดเสียงของเครื่องคอมพิวเตอร์
  5. ใช้สวิตซ์แทนการ กดคลิกเมาส์ ซ้ายและขวา
  6. การติดต่อสื่อสาร Serial Port ระหว่าง Arduino และ Python
  7. Python สั่งเปิด-ปิดไฟ LED
  8. กดสวิตซ์แล้ว ส่งค่าผ่าน Serial Port ไปยัง โปรแกรมภาษา python และส่งข้อความเข้า Line Notify
  9. รับค่าจาก LDR เช็คความสว่างและมืด จากนั้นสร้างเงื่อนไขส่งเข้า Line ด้วย python
  10. ทำบอทเกม Cabal จาก ArduinoและPython ตีอัตโนมัติแบบง่ายๆ เวอร์ชั่น 1
  11. ทำบอทเกม Cabal ด้วย Arduino+Python จับเลือด มอนเตอร์ และเลือดตัวละคร Alert แจ้งเตือนเข้า Line Notify
  12. ทำบอทเกม Ro จาก ArduinoและPython ตีอัตโนมัติแบบง่ายๆ เวอร์ชั่น 1
  13. แก้ปัญหา การใช้ Arduino สั่งคลิกเมาส์ กับเกมหรือระบบที่มีการป้องกันการคลิก
ลงมือกันเลย!!!

1. โครงสร้างบอร์ด Arduino Leonardo และ Arduino Leonardo Pro micro

2. กดสวิตซ์ครั้งเดียว สั่งให้คลิกเมาส์ อัตโนมัติ

ก่อนอื่นเลยเริ่มเตรียมอุปกรณ์ ต่อวงจร และ เขียนโค้ดกันครับ
อุปกรณ์
1. สวิตซ์ กดติด-ปล่อยดับ
2. บอร์ด Arduino Leonardo หรือ Leonardo Pro Micro
3. สายจั้ม ใช้สำหรับต่อจาก สวิตซ์มายังบอร์ด arduino
วงจร

เมื่อต่อวงจรเสร็จแล้วก็จะได้หน้าตาประมาณข้องล่างนี้ครับ
//===AKE-Remake===//
#include <Mouse.h> //บรรทัดนี้ เราทำการเพิ่มไลบารี่ Mouse เข้ามาอันนี้จำเป็นครับต้องใส่ไว้
void setup() { //บรรทัดนี้คือ การกำหนดค่าให้กับ บอร์ดของเราครับ
  pinMode(A1, INPUT); //กำหนด A1 ให้ทำหน้าที่รับค่า
}
void loop() { //บรรทัดนี้คือ loop ซึ่งอะไรก็ตามที่อยู่ในนี้ จะมีการรันคำสั่งทำงานวนไปตลอดเวลา
  if (digitalRead(A1) == HIGH){ //สร้างเงื่อนไขขึ้นมาโดยเมื่อ A1 มีค่าเท่ากับ HIGHหรือมีไฟ5V.มาจ่ายให้ทำตามเงื่อนไขข้างล่าง
Mouse.click(MOUSE_LEFT); //สั่งกดคลิกเมาส์ซ้าย delay(50); //หน่วงเวลา โดยถ้าใส่ค่า1000จะเท่ากับ1วินาที Mouse.click(MOUSE_LEFT); //สั่งกดคลิกเมาส์ซ้ายอีกครั้งเพื่อให้ชัวครับ
    Mouse.end(); //ออกจากการทำงานของ เมาส์
  }
}
//===AKE-Remake===//
จาก Code ข้างต้นตัวผมคิดว่าคงไม่มีปัญหาสงสัยกันนะครับ ไม่ยากเท่าไหร่แต่หากสงสัยสอบถามได้ครับ

แสดงความคิดเห็น

0 ความคิดเห็น