jolicode/php-ar-drone

此包已被废弃且不再维护。未建议替代包。

通过PHP控制AR Drone

dev-master 2016-04-06 07:43 UTC

This package is not auto-updated.

Last update: 2022-07-04 18:20:49 UTC


README

php-ar-drone 是 node-ar-drone 的移植,允许用户通过PHP控制Parrot AR Drone。不,这不是玩笑。

这个库提供了与node库相同的特性,因此这个文档主要基于node-ar-drone的文档。底层的UdpControl API尚未实现。

这个库基于优秀的reactphp库,它为PHP带来了非阻塞I/O系统。

安装

使用Composer

composer require jolicode/php-ar-drone dev-master

使用方法

一些示例位于examples/目录中。请随意测试这些示例。

客户端API

$client = new \Joli\ArDrone\Client();
// use API service (see below)
$client->start();

$client->takeoff($callback)

将内部 fly 状态设置为 true,当无人机报告正在悬停时调用 $callback

$client->land($callback)

将内部 fly 状态设置为 false,当无人机报告已着陆时调用 $callback

$client->up($speed) / $client->down($speed)

使无人机增加或减少高度。 $speed 可以是 01 的值。

$client->clockwise($speed) / $client->counterClockwise($speed)

使无人机旋转。 $speed 可以是 01 的值。

$client->front($speed) / $client->back($speed)

控制俯仰角,即以摄像机为参考点的水平运动。 $speed 可以是 01 的值。

$client->left($speed) / $client->right($speed)

控制滚转,即以摄像机为参考点的水平运动。 $speed 可以是 01 的值。

$client->stop()

将所有无人机运动命令设置为 0,使其有效地在原地悬停。

事件

只要启用demo navdata,客户端将发出 landedhoveringflyinglandingbatteryChangealtitudeChange 事件。以下是一个捕获事件的示例

$client->on('landed', function() {
    // do something
});