[問題] 藍芽如何操控多台機器人? (獎勵微薄p幣)
各位前輩們好
小弟有個疑問想問大家
上篇被版主收爭議文是版規沒注意到
相同的疑問 但是小弟縮減了程式碼並更正確的發問真正的問題
小弟現在是能用筆電透過藍芽連結到LEGO機器人讓他前後左右
但是想請問一下
因為目前能做到的是一(NB)對一(LEGO)
有沒有辦法是一(NB)對多(2台LEGO)
就是說我從筆電按一個視窗的前後左右
兩台LEGO能同時前進
下面的程式碼雖然看不太出來真正讓機器人動的指令是哪個地方
(看起來有點像是 new MouseAction(dataOut, xxxx)?)
不過跟機器人連線的應該是這一段程式碼吧
-------
conn = new NXTConnector();
if(!conn.connectTo("", "", NXTCommFactory.BLUETOOTH)) //連線到NXT
{
JOptionPane.showMessageDialog(null, "Cannot connect to NXT", "Error",
JOptionPane.ERROR_MESSAGE); //連線失敗訊息
System.exit(1);
}//if
dataOut = conn.getDataOut(); //取得輸出串流
-------
那麼應該只要同時建立兩個連線,分別對應兩個機器人
就會有兩個 dataOut 的物件
在要下指令的時候就同時對兩個 dataOut 物件去下指令
例如:
-------
//右轉按鈕
btRight = new JButton("→");
btRight.setBounds(200, 100, 100, 100);
btRight.addMouseListener(new MouseAction(dataOut_1, RIGHT));
btRight.addMouseListener(new MouseAction(dataOut_2, RIGHT));
this.getContentPane().add(btRight);
-------
類似這樣的寫法應該就能達到目的了吧!?
為了解惑小弟會給文章內有推文的前輩們一些酬謝金(P幣)
就依照受益的程度不分多少吧!!:)
希望各位資深前輩能不吝嗇指教!
--
╔《新版十二生肖》═════════════════════════════╗
║ ◣◣ ˍ ║
●●╰‧‧╯◣ ◢ [ ] ιι . .◣ - - ◣ ˍ▁ ◢﹎◣▁▂ ║
◢'' .. '〒' '. ' ' ' ξ ▌ . . ≡◢'◎@@ ●﹏●★' ◣ ˊ▄ˋ ★︰ ║
‵′/ ██╯ █/ ▲╭≡╮ ▃  ̄█ㄟ @@@@ ◣◢ ◥█◤ ˋ▄ˊ ‥ ║
╚═══" " ════════════ "═"══"═"══╯══════liszt1025╝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.251.177.139
→
12/08 20:49, , 1F
12/08 20:49, 1F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):