在DJI Matrice 100的树莓派3上安装dji-osdk的问题

时间:2019-02-26 13:48:34

标签: ros dji-sdk

我在树莓派3上安装了ubuntu mate 16.04,并安装了ROS。我正在按照此guide的要求在树莓派上安装osdk。在第6点,当我键入catkin_make时,树莓冻结在94%,没有完成编译(我认为这是因为树莓用完了ram)。我该怎么办?

1 个答案:

答案 0 :(得分:2)

添加交换空间将使Raspberry Pi可以将SD卡用作额外的内存。访问该内存将非常慢,但是在这种情况下很有用。

要创建交换文件,您需要运行以下命令。这些说明假定可以在根目录中创建交换文件。您可能要根据设置进行更改,以确保在SD卡上创建了文件。

function getZipFile($remoteData,$token){
//$token = "33a6d06d42ebfc629f3dbe8746a5cfb60c00f290";
/*$remoteData = array(
        'fileData' => $local_version_name
        //"username" => "bwuser@brightwin.com",
        //"password" => "mVYdueeEVgan",
        //"client_id" => "LIVE",
        //"client_secret" => "liveUpdate",
        //"grant_type" => "password"
    );*/

$curl = curl_init('http://company.com/companyuser/getRequest.php');

$authorization = "Authorization: Bearer ".$token; // Prepare the authorisation token
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded' , $authorization )); // Inject the token into the header
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $remoteData);
$response = curl_exec($curl);
if(!$response) {
 echo "Error :- ".curl_error($curl)."<br>";
}
curl_close($curl);
echo $response."<br/>";// set response to server.php file 
}

要使用交换文件,请运行以下命令。请注意,每次启动时都需要运行此命令。

sudo fallocate -l 1G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile

要验证一切正常,可以使用此命令检查内存状态。

sudo swapon /swapfile

您需要运行此命令以自动添加交换文件。

free -h

有关更多信息,请查看这篇文章:https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-16-04