# คาลิเบเตอร์และคอนโทรลเลอร์

## การแนะนำ

ขอบคุณที่เลือกหุ่นยนต์ Bittle หรือ Nybble ของ Petoi คู่มือนี้จะช่วยคุณตั้งค่าหุ่นยนต์บัดดี้และจัดเตรียม UI ที่เรียบง่ายขึ้นเพื่อปรับเทียบ ควบคุม และตั้งโปรแกรม สำหรับผู้ใช้ขั้นสูง เราขอแนะนำให้คุณอัปเดตหุ่นยนต์ด้วยเฟิร์มแวร์ [OpenCat firmware](https://github.com/PetoiCamp/OpenCat) บน Github เพื่อความเข้ากันได้ที่ดีที่สุดและคุณสมบัติใหม่ล่าสุด

## ดานว์โหลดและติดตั้ง

แอพนี้ใช้งานได้ทั้งบนอุปกรณ์ Android และ iOS

* [iOS 11+](https://apps.apple.com/us/app/petoi/id1581548095)
* [Android 4.4+](https://play.google.com/store/apps/details?id=com.petoi.petoiapp)

คุณยังสามารถดาวน์โหลด android APK และติดตั้งบนโทรศัพท์ของคุณ คุณต้องเปิดเครื่องรูดก่อนการติดตั้ง

{% file src="<https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBR9bYMZnmeFFa1GJLvjM%2Fuploads%2FHpIofzbcFeOhZJP7IKiS%2Fapp-release-v1.0.5-17-1.apk.zip?alt=media&token=2de9d27f-c072-44c7-853e-8567cb96e1be>" %}
We keep updating the newest version here
{% endfile %}

หากดองเกิล Bluetooth กะพริบในขณะที่แผงการเชื่อมต่อภายในแอพแสดงรายการการเชื่อมต่อ Bluetooth ที่ว่างเปล่า ก่อนอื่นให้ตรวจสอบว่าคุณได้ให้สิทธิ์ Bluetooth และตำแหน่งแก่แอพหรือไม่ หากยังคงแสดงรายการว่าง คุณอาจลองติดตั้งเวอร์ชันเสถียรก่อนหน้า

{% file src="<https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBR9bYMZnmeFFa1GJLvjM%2Fuploads%2FxVNLJB3i9Nt9uQZB8eEH%2FPetoi-1.0.2.apk.zip?alt=media&token=6690f506-3179-41f7-a209-e6b704259ca2>" %}
The latest stable version in case of compatibility issues
{% endfile %}

![](https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBR9bYMZnmeFFa1GJLvjM%2Fuploads%2FZeLqSsi41oE9E1NssUjf%2Fimage.png?alt=media\&token=5de7e42c-8e14-4c59-90ce-ff5592de78bb)

## เชื่อมต่อกับหุ่นยนต์ของคุณ

คุณต้องเสียบ [Bluetooth dongle](https://docs.petoi.com/modules/bluetooth-dual-mode) เข้ากับซ็อกเก็ต 6 พินบน NyBoard ให้ความสนใจกับลำดับพินของดองเกิลบลูทูธ กดปุ่มบนแบตเตอรี่ค้างไว้เพื่อเปิดพลังงานของหุ่นยนต์

{% hint style="warning" %}
หากเสียงบี๊บดังขึ้นซ้ำๆ หลังจากบู๊ตเครื่องหรือระหว่างใช้งาน แสดงว่าแบตเตอรี่เหลือน้อย กรุณาชาร์จในเวลา พอร์ตชาร์จอยู่ที่ปลายด้านหนึ่งของแบตเตอรี่
{% endhint %}

![](https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MQ6a951Q6Jn1Zzt5Ajr%2F-MjZTVQG9FtL5GpEpRwK%2F-MjZV96lacYVzliIG6xN%2Fblue.jpg?alt=media\&token=99cb701d-2e10-4336-ab26-8965a0dff1dc)

ไฟ LED บนดองเกิล Bluetooth ควรกะพริบเพื่อรอการเชื่อมต่อ เปิดแอปและสแกนอุปกรณ์บลูทูธที่มีอยู่ **อย่าเชื่อมต่อหุ่นยนต์กับการตั้งค่าบลูทูธทั้งระบบของโทรศัพท์!** เชื่อมต่ออุปกรณ์ด้วยชื่อ Bittle, Petoi หรือ OpenCat อย่าลืมเปิดบริการบลูทูธและให้สิทธิ์แอปเข้าถึงบริการ ในบางอุปกรณ์ คุณอาจต้องอนุญาตบริการระบุตำแหน่งสำหรับแอป แม้ว่าเราจะไม่ได้ใช้ข้อมูลเหล่านั้นก็ตาม

{% hint style="warning" %}
แอพจะส่งคำทักทายไปยังอุปกรณ์บลูทูธและคาดหวังการตอบกลับจากเฟิร์มแวร์ OpenCat คุณต้องติดตั้งรหัส OpenCat แบบเต็มบนหุ่นยนต์ของคุณก่อนที่จะเชื่อมต่อกับแอพ มิฉะนั้นแอปจะถือว่า "ไม่ใช่อุปกรณ์ Petoi" หุ่นยนต์ที่ประกอบไว้ล่วงหน้าควรติดตั้งเฟิร์มแวร์ไว้แล้ว มิฉะนั้น คุณต้องกำหนดค่าด้วย Arduino IDE หรือแอปเดสก์ท็อป
{% endhint %}

![](https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MQ6a951Q6Jn1Zzt5Ajr%2F-MjZTVQG9FtL5GpEpRwK%2F-MjZWU2EpJOmFcBOEKGH%2FconnectModel.png?alt=media\&token=3ba0659a-f8c5-481c-8a88-7c08449c19d5)

หากเชื่อมต่อ Bluetooth ไฟ LED จะสว่างคงที่ หุ่นยนต์จะเล่นทำนองสามเสียง หากหุ่นยนต์ไม่ตอบสนองหรือทำงานผิดปกติในภายหลัง ให้กดปุ่มรีเซ็ตบน NyBoard เพื่อรีสตาร์ทโปรแกรมบน NyBoard

แอพควรตรวจจับ Nybble หรือ Bittle โดยอัตโนมัติด้วยเฟิร์มแวร์ OpenCat ล่าสุด มิฉะนั้นจะแสดงการเลือกสำหรับ Nybble หรือ Bittle ตัวเลือก "**เลือกหุ่นยนต์**" ยังสามารถเข้าชมซ้ำได้ในแผงควบคุม

![](https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBR9bYMZnmeFFa1GJLvjM%2Fuploads%2FjATiJ18zULl1BFchwzwo%2FControl_Cali_en.jpg?alt=media\&token=0c9a6f1d-c612-4de1-a284-a155324dee1f)

## คาลิเบตข้อต่อ

### Nybble

![Calibration Interface](https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBR9bYMZnmeFFa1GJLvjM%2Fuploads%2FrVX604p3FUzrS02qsjun%2FNybble_Cali_En.png?alt=media\&token=45c64989-709c-493f-aed7-849859e5b1af)

### Bittle

![Calibration Interface](https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MQ6a951Q6Jn1Zzt5Ajr%2F-MjZTVQG9FtL5GpEpRwK%2F-MjZW3to7df6RE8rV5V7%2FcalibPanel.png?alt=media\&token=3155a810-3442-4f56-95e3-3ef3468d88a1)

{% hint style="info" %}
อินเทอร์เฟซหน้าจอด้านบนจะแสดงขึ้นเมื่อคุณคาลิเบตเป็นครั้งแรก คุณยังสามารถคลิกเพื่อเปิดเมนูด้านขวาบนในแผงควบคุมและเลือก "ปรับเทียบ" เพื่อเข้าถึงอีกครั้ง

![](https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBR9bYMZnmeFFa1GJLvjM%2Fuploads%2Fj4uVmtVsZ8qPYC7TwO28%2FControl_Cali_en.jpg?alt=media\&token=3a0b86ee-3ce8-44d3-875e-bbf72a6bcc3b)
{% endhint %}

{% hint style="warning" %}
หุ่นยนต์ที่ประกอบไว้ล่วงหน้าควรติดตั้งขาอย่างถูกต้องแล้ว แต่ไม่ได้รับการปรับแต่งอย่างละเอียด

ตรวจสอบให้แน่ใจว่าคุณได้อัปโหลดเฟิร์มแวร์ ["Main function" firmware](https://docs.petoi.com/desktop-app/firmware-uploader#uploading-process) ก่อนการคาลิเบต

หากคุณกำลังสร้างหุ่นยนต์จากชุดอุปกรณ์ อย่าติดตั้งส่วนประกอบขาจนกว่าจะมีการคาลิเบต คุณต้องติดตั้งแบตเตอรี่และกดปุ่มบนแบตเตอรี่ค้างไว้เพื่อจ่ายไฟให้กับหุ่นยนต์

<img src="https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBR9bYMZnmeFFa1GJLvjM%2Fuploads%2FNejbZqWTAtz0I1Iaf9in%2Fassets_bittle_wire2.jpeg?alt=media&#x26;token=f6bbcb0d-3df9-45e7-aa3a-e73745ce925e" alt="" data-size="original">
{% endhint %}

เข้าสู่อินเทอร์เฟซการสอบเทียบ คลิกปุ่ม "คาลิเบตเทียบ" และเซอร์โวทั้งหมดจะย้ายไปยังตำแหน่งการคาลิเบตทันที

{% hint style="info" %}
หากคุณกำลังสร้างหุ่นยนต์จากชุดอุปกรณ์ ให้ติดตั้งส่วนประกอบที่เกี่ยวข้องกับเซอร์โวตามส่วนที่สองในภาพอินเทอร์เฟซการสอบเทียบ และพยายามตรวจสอบให้แน่ใจว่าชิ้นส่วนเหล่านี้ตั้งฉากกัน (ขาท่อนบนตั้งฉากกับลำตัว และ ขาท่อนล่างตั้งฉากกับท่อนบน) โปรดดูบทที่เกี่ยวข้องในคู่มือผู้ใช้สำหรับรายละเอียด:

* Nybble
* [Bittle](https://app.gitbook.com/s/-MPQ2vWEZUH7ol6XE55o-887967055/4-connect-the-wires#5.2-prepare-for-calibration)
  {% endhint %}

**ใช้เครื่องมือรูปตัว L ที่ให้มาเพื่อเป็นข้อมูลอ้างอิง!**

![](https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBR9bYMZnmeFFa1GJLvjM%2Fuploads%2FsQFqPP6IaZvxOEUXFkhA%2FNybble-L.jpg?alt=media\&token=de9ecb4a-1e5b-4dce-9a6a-1c2bed9caa5d) ![](https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBR9bYMZnmeFFa1GJLvjM%2Fuploads%2FelWyZzp3Jo4e5KCd9Apu%2Fassets_bittle_-MSGw-I0q_j0kHosz8nz_-MSGx1sAobtzY1ucuddF_53.jpeg?alt=media\&token=20d49ee0-3d93-466a-a490-7a41c25a597c)

เมื่อทำการปรับเทียบ ก่อนอื่นให้เลือกหมายเลขดัชนีของข้อต่อเซอร์โวจากไดอะแกรม (เมื่อปรับเซอร์โวขา ให้ปรับต้นขาก่อน จากนั้นจึงปรับน่อง) จากนั้นคลิกปุ่ม "+" หรือ "-" เพื่อปรับแต่ง ข้อต่อไปยังสถานะมุมฉาก

{% hint style="info" %}
หากออฟเซ็ตมากกว่า +/- 9 องศา คุณต้องถอดชิ้นส่วนเซอร์โวที่เกี่ยวข้องออกและติดตั้งใหม่โดยหมุนฟันซี่เดียว จากนั้นกดปุ่ม "+" หรือ "-"

ตัวอย่างเช่น หากคุณต้องใช้ -10 เป็นค่าการสอบเทียบ ให้ถอดขาออก หมุนด้วยฟันซี่เดียวแล้วติดกลับเข้าไปใหม่ ค่าการสอบเทียบใหม่ควรอยู่ที่ประมาณ 4 นั่นคือรวมได้สูงสุด 14 หลีกเลี่ยงการหมุนเพลาเซอร์โวระหว่างการปรับนี้
{% endhint %}

คุณสามารถสลับระหว่างการพัก ยืน และเดินเพื่อทดสอบการปรับเทียบ

![Bittle](https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBR9bYMZnmeFFa1GJLvjM%2Fuploads%2FfkO3PUMymcCG8MgpMbXU%2FcalibValidation_Bittle.png?alt=media\&token=7457ffb9-f8e2-4734-87b5-548884bc3c47)

{% hint style="info" %}
Note:&#x20;

คุณอาจต้องทำการคาลิเบตรอบที่สองเพื่อให้ได้ผลลัพธ์ที่ดีที่สุด
{% endhint %}

หลังจากการคาลิเบต อย่าลืมคลิกปุ่ม "บันทึก" เพื่อบันทึกค่าคาลิเบตอันใหม่ มิฉะนั้น ให้คลิก "<" ที่มุมซ้ายบนเพื่อยกเลิกการปรับเทียบ

## ใช้แผงควบคุม

ในแผงควบคุม คุณสามารถใช้ปุ่ม pe-set เพื่อควบคุมหุ่นยนต์ได้

![](https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBR9bYMZnmeFFa1GJLvjM%2Fuploads%2FRUCM2Kb8GvE5hlijcbKW%2FcontrolPanel01.jpg?alt=media\&token=52ad843f-8071-47f5-a4f1-62ec200ea8f0)

**การเดิน**

แผงด้านซ้ายกำหนดทั้งการเดินและทิศทางของหุ่นยนต์ และส่งคำสั่งรวมกัน เช่น "เดินไปทางซ้าย" และ "วิ่งไปข้างหน้า" หุ่นยนต์จะเคลื่อนที่ก็ต่อเมื่อเลือกการเดินและทิศทางเริ่มต้นเท่านั้น "ก้าว" ไม่มีทิศทาง และ "ถอยหลัง" มีทิศทางซ้ายและขวา ปุ่มหยุดชั่วคราว "||" จะหยุดการเคลื่อนไหวของหุ่นยนต์ชั่วคราวและปิดเซอร์โว เพื่อให้คุณสามารถหมุนข้อต่อไปยังมุมใดก็ได้ ปุ่ม "Turbo" ( <img src="https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBR9bYMZnmeFFa1GJLvjM%2Fuploads%2F1kw39BbpLtdPTKipQSjE%2Fbalancer01.png?alt=media&#x26;token=97995335-c8d6-479f-95b6-14fda804084d" alt="" data-size="line"> )เปิด/ปิดไจโร ซึ่งเป็นเซ็นเซอร์ตรวจจับทิศทางร่างกายของหุ่นยนต์ การเปิดเครื่องจะทำให้หุ่นยนต์ปรับตามมุมของร่างกายและจะรู้ได้เองเมื่อกลับหัว การปิดจะลดการคำนวณและทำให้เดินเร็วขึ้นและเสถียรขึ้น &#x20;

**ท่าทางและพฤติกรรม**

ท่าทางและพฤติกรรมในตัวสามารถกระตุ้นได้โดยการกดปุ่ม อย่ากดปุ่มบ่อยเกินไปและซ้ำๆ ให้เวลาหุ่นยนต์ทำงานปัจจุบันให้เสร็จ

**ปุ่มที่กำหนดเอง**

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

![](https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBR9bYMZnmeFFa1GJLvjM%2Fuploads%2FINsTsxV4S0rloxq0vk2G%2F%E4%BF%AE%E6%94%B9%E5%91%BD%E4%BB%A4_en.PNG?alt=media\&token=d30c65c7-b57b-4234-a73d-d2c5f33b9741)

คำสั่งที่กำหนดเองเพื่อลอง:

#### \* move head (move joint angle)&#x20;

m0 45

#### \* move head left and right (move joint1 angle1 joint2 angle2 .... The angle is -127\~128)&#x20;

m0 -70 0 70

#### \* sit&#x20;

ksit

#### \* move joints one by one&#x20;

m 0 -70 0 70 8 -30

#### \* MOVE joints simutanuosly&#x20;

i 0 -45 8 -30 12 -60

ด้านล่างนี้คือดัชนีของข้อต่อสำหรับการอ้างอิงของคุณ สังเกตรูปแบบการจัดลำดับและพยายามจดจำให้ได้

![](https://3127300255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBR9bYMZnmeFFa1GJLvjM%2Fuploads%2FsDKZXXiQyzeYFLmUyHAM%2Findexes.png?alt=media\&token=c89384d5-60f8-4c2e-bdf5-8f689017c954)

#### \* show current joint angles&#x20;

j

#### \* long meow once&#x20;

u0 1

#### \* short meow three times&#x20;

u2 20

#### \* play a short tone (beep tone duration, duration is 0\~256)&#x20;

b12 100

#### \* play a melody (beep tone1 duration1, tone2 duration2, tone3 duration3, .... only 64 characters are allowed, the actual duration is calculated as 1/duration)&#x20;

b14 4 14 4 21 4 21 4

สามารถดูตารางคำสั่งโดยละเอียดเพิ่มเติมได้ใน [Serial Protocol](https://docs.petoi.com/serial-protocol).&#x20;

{% hint style="info" %}
[The SkillLibrary folder](https://github.com/PetoiCamp/OpenCat/tree/main/SkillLibrary) ใน Github คือการรวบรวมทักษะใหม่ๆ ของหุ่นยนต์ OpenCat ซึ่งสามารถใช้อ้างอิงและใช้งานได้ (หลังจากดาวน์โหลด คุณสามารถบันทึกทักษะเดียวไปยังหน่วยความจำของหุ่นยนต์ผ่านแอปพลิเคชันเดสก์ท็อป Petoi -> [Skill Composer](https://docs.petoi.com/desktop-app/skill-composer) และใช้  [Customized buttons](#customized-buttons).ตั้งชื่อคำสั่งในกล่องข้อความ "ชื่อ" (เช่น "เรียกทักษะใหม่") ป้อน "T" ในกล่องข้อความ "รหัส" และบันทึก คลิกปุ่มฟังก์ชันนี้เพื่อดูผลของการดำเนินการทักษะนำเข้า)&#x20;

คุณสามารถแบ่งปันทักษะใหม่ของคุณได้โดยส่งคำขอผสานไปยังโฟลเดอร์นี้.
{% endhint %}

## การอัปเดตและการสนับสนุน

เราปรับปรุงแอปต่อไปและจะแจ้งให้คุณทราบเมื่อมีการอัปเดต โปรดส่งข้อความถึง <support@petoi.com> หากคุณมีคำถามใดๆ เกี่ยวกับแอป
