我正在为Aldebaran的Pepper机器人编写一个应用程序。我正在使用Choregraphe,并制作了一个用于在机器人平板电脑中显示的html页面。 我只想通过在机器人的平板电脑上显示的HTML页面中按一个按钮来激活输出(必须在“ SHOW APP”框中添加)。 该怎么做?
答案 0 :(得分:0)
答案 1 :(得分:0)
index.html
<head>
<script src="/libs/qi/2/qi.js"></script>
<script src="js/script.js"></script>
</head>
<body>
<div class="flex">
<button class="button" onclick="launchEvent1()">First event</button>
<button class="button" onclick="launchEvent2()">Second event</button>
<button class="button" onclick="launchEvent3()">Third event</button>
<button class="home" onclick="launchEventHome()">Home button</button>
</div>
</body>
script.js
session = null
QiSession(connected, disconnected, location.host);
function connected(s) {
console.log("Session connected");
session = s;
//If you want to subscribe so some events (to send info pepper->tablet) call the function here
}
function disconnected(error) {
console.log("Session disconnected");
}
function launchEventHome(){
session.service("ALMemory").then(function (memory) {
memory.raiseEvent("homeEvent", "paramHome");
});
}
function launchEvent1(){
session.service("ALMemory").then(function (memory) {
memory.raiseEvent("event1", "param1");
});
}
function launchEvent2(){
session.service("ALMemory").then(function (memory) {
memory.raiseEvent("event2", "param2");
});
}
function launchEvent3(){
session.service("ALMemory").then(function (memory) {
memory.raiseEvent("event3", "param3");
});
}
在编排上,单击“来自ALMemory的添加事件”(左侧的加号图标),然后选择“添加新键”。在.js文件中给它命名(在我的情况下,是event1,event2,event3和homeEvent)。
这样,每当用户单击平板电脑上的按钮时,它将触发事件并以动态类型发送param(param1、2等,取决于用户所按下的按钮)