当前位置: 首页 > news >正文

网站建设案例模板开个网站卖机器怎么做

网站建设案例模板,开个网站卖机器怎么做,手游cpa推广平台,wordpress输入电子邮箱Webots支持C、C、Java、Python、Matlab这五种语言开发控制器#xff0c;没有直接支持C##xff0c;但有个同事已经用C#写了大量的机器人控制代码#xff0c;想在不把C#代码改写成C的情况下#xff0c;直接用webots仿真#xff0c;那就得想想办法。(不过#xff0c;让Chat…        Webots支持C、C、Java、Python、Matlab这五种语言开发控制器没有直接支持C#但有个同事已经用C#写了大量的机器人控制代码想在不把C#代码改写成C的情况下直接用webots仿真那就得想想办法。(不过让ChatGPT帮忙把一种语言的代码转成另外一种语言的代码还是挺方便的准确率很高。) 在Webots的安装路径下找到lib\controller文件夹里面有Controller.dll和Controller.lib文件对于C#我们只需要Controller.dll文件(C和C的开发就需要Controller.lib文件)把这个dll文件复制到C#程序编译输出exe的文件夹里通常是bin\x64\Debug\net8.0(注意是跟输出的exe文件放在同一文件夹里而不是跟C#的源代码放在同一文件夹里。既不需要也不能在VS解决方案中添加对Controller.dll的引用尝试添加它会报错。Controller.dll是64位的所以C#程序也要编译成64位的。)         Controller.dll实现了(或者说导出了)Webots\include\controller\c\webots文件夹中所有的头文件中声明的全部函数(共932个)比如最常用wb_robot_init(), wb_robot_step(),wb_motor_set_position(), wb_motor_set_velocity(), wb_motor_get_target_position()肯定都有的。而cpp的函数其实都是在调用c的函数看看\Webots\src\controller\cpp里面的cpp文件就明白了。如果你装了VS 2022可以打开开始菜单中Visual Studio 2022文件夹里的随便点开一个 xxx Command Prompt for VS 2022, 输入 dumpbin /exports E:\Program Files\Webots\lib\controller\Controller.dll 就能看到所有的导出函数了。 为了能使用Controller.dll在C#的cs文件中 using System.Runtime.InteropServices; 再去robot.h, motor.h等头文件中找你需要的函数的定义然后在一个C#的class里面加入大量类似下面的语句 [DllImport(Controller.dll)] public static extern void wb_robot_init(); 看.h文件中的函数定义一定会遇到WbDeviceTag可以在Webots\include\controller\c\webots\types.h中找到对WbDeviceTag的定义 typedef unsigned short WbDeviceTag; 对应到C#中就是ushort类型。遇到const char *就换成string. 把需要用到的函数都经过上面的声明后就能和在C语言中一样使用这些函数了。示例C#代码如下 using System.Runtime.InteropServices;public class Program {[DllImport(Controller.dll)]public static extern void wb_robot_init();[DllImport(Controller.dll)]public static extern void wb_robot_cleanup();[DllImport(Controller.dll)]public static extern void wb_robot_step(int duration);[DllImport(Controller.dll)]public static extern void wb_motor_set_position(ushort tag, double position);[DllImport(Controller.dll)]public static extern void wb_motor_set_velocity(ushort tag, double velocity);[DllImport(Controller.dll)]public static extern void wb_motor_get_target_position(ushort tag);[DllImport(Controller.dll)]public static extern ushort wb_robot_get_device(string name);public static void GetAllMotor(ref ushort[] motor){ motor[10] wb_robot_get_device(TA_joint_01);motor[9] wb_robot_get_device(TA_joint_02);motor[8] wb_robot_get_device(TA_joint_03);motor[7] wb_robot_get_device(TA_joint_04);motor[6] wb_robot_get_device(TA_joint_05);}public static void Main(){ wb_robot_init();ushort[] motor new ushort[11];GetAllMotor(ref motor);wb_motor_set_position(motor[10], Math.PI/2); wb_motor_set_position(motor[8], 3); // 单位是弧度 wb_robot_step(500);wb_robot_cleanup();Console.ReadKey();} } 启动C#程序后会看到如下报错暂未发现有什么不良影响还是能正常操作webots中的机器人。 Error: 找不到指定的模块。  (dynamic library) Error: failed to load E:/Program Files/Webots/resources/projects/plugins/robot_windows/generic/generic.dll library. generic.dll的路径是正确的然而即使把generic.dll跟Controller.dll放在一起也无法解决这个报错。
http://www.w-s-a.com/news/568793/

相关文章:

  • 现在网站还用asp做男科医院哪家好一些
  • 服装设计网站素材郑州汉狮做网站网络公司
  • 宜州做网站做仿制网站
  • 中山营销型网站厦门工程建设招聘信息网站
  • 网站开发 外包空心找回微信
  • 长沙市网站推广多少钱网站开发流程图和介绍
  • 网站后缀net施工企业自建自用的工程可以不进行招标是否正确
  • 鄂尔多斯市住房和城乡建设厅网站帮别人做网站赚钱6
  • 宜选科技就是帮人做网站动漫制作专业主修课程
  • 怎么做网站免费的教程温州捷创网站建设
  • 做免费推广的网站有哪些深圳华强北最新消息
  • 电子商务网站建设规划开题报告桂林漓江景区游玩攻略
  • 程序员参与洗钱网站建设做视频网站需要多少钱
  • 网站建设背景是什么企业邮箱怎么写
  • 山东省建设资格中心网站iis wordpress安装教程
  • 做的网站 显示乱码怎么做微信小程序平台
  • 怎样建设打字网站怎样增加网站浏览量
  • 网站建设方案的征求意见网站主机免备案
  • 共享农业网站建设郑州市建网站
  • 成都网站建设四川冠辰网站建设带会员系统的网站模板
  • 水果网站建设方案书wordpress get_the_category
  • 第一ppt网站官网买域名价格
  • 网站 报价单自己做的网站如何上传
  • 天津网站建立辽宁建设工程信息网2017年定额人工费系数
  • 柳州网站优化搜索引擎优化方法案例
  • 什么网站比较少人做响应式网站开发周期
  • 公司网站欢迎语工作期间员工花钱做的网站
  • 新网站该如何做网站优化呢网络营销网站设计
  • 旅游门户网站模板下载做策划网站推广怎么写简历
  • 建设隔离变压器移动网站wordpress动态导航