teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

9

2020/06/25 14:54

投稿

sousoudig
sousoudig

スコア0

title CHANGED
File without changes
body CHANGED
@@ -2,8 +2,8 @@
2
2
  この質問の編集前の皆さんのアドバイスのおかげで一応計算は出来ました。しかし今度はプログラミングにそれを書き出そうとすると一応ビルドは出来るのですが目標座標まで到達してくれません。恐らくsetMoveVector関数の中の書き方が違うのかなと思われまが、おおまかな原因がわかりません。改善点を教えて貰えますでしょうか?
3
3
  ```C++
4
4
  コード
5
-
5
+ #include "ros/ros.h"
6
- geometry_msgs/Twist.h>
6
+ #include <geometry_msgs/Twist.h>
7
7
  #include <turtlesim/Pose.h>
8
8
 
9
9
  class turtleSim{

8

2020/06/25 14:54

投稿

sousoudig
sousoudig

スコア0

title CHANGED
File without changes
body CHANGED
@@ -1,5 +1,5 @@
1
1
  ### 前提・実現したいこと
2
- 私はROSを使用してturtlesimノードの亀が今いる座標軸や回転角を購読てそこら回転、移動て座標[5.5]地点まで動くプログラミングを作りたい思っており、プログラミングを組み立ててみたのでが、ビルドはできたのですが,亀は超高速で円を描くだけでした。以下にプログラミングを載せすの改善点を教えてもらえないでょうか。恐らくsetMoveVector関数の中の書き方が違うのかなと思われま
2
+ この質問の編集前の皆さんのアバイスおかげで一応計算は出来また。しかし今度はプログラミングにそれ書き出そうとすると一応ビルドは出来るのですが目標座標まで到達てくれません。恐らくsetMoveVector関数の中の書き方が違うのかなと思われまが、おおまかな原因がわかりません改善点を教えて貰えますでしょうか?
3
3
  ```C++
4
4
  コード
5
5
 

7

2020/06/25 14:48

投稿

sousoudig
sousoudig

スコア0

title CHANGED
File without changes
body CHANGED
@@ -2,9 +2,8 @@
2
2
  私はROSを使用してturtlesimノードの亀が今いる座標軸や回転角を購読してそこから回転、移動して座標[5.5]地点まで動くプログラミングを作りたいと思っており、プログラミングを組み立ててみたのですが、ビルドはできたのですが,亀は超高速で円を描くだけでした。以下にプログラミングを載せますので改善点を教えてもらえないでしょうか。恐らくsetMoveVector関数の中の書き方が違うのかなと思われます。
3
3
  ```C++
4
4
  コード
5
- ```
5
+
6
- #include "ros/ros.h"
7
- #include <geometry_msgs/Twist.h>
6
+ geometry_msgs/Twist.h>
8
7
  #include <turtlesim/Pose.h>
9
8
 
10
9
  class turtleSim{
@@ -92,4 +91,6 @@
92
91
  return 0;
93
92
  }
94
93
 
94
+ ```
95
+
95
96
  ```

6

2020/06/25 14:45

投稿

sousoudig
sousoudig

スコア0

title CHANGED
File without changes
body CHANGED
@@ -1,14 +1,7 @@
1
1
  ### 前提・実現したいこと
2
2
  私はROSを使用してturtlesimノードの亀が今いる座標軸や回転角を購読してそこから回転、移動して座標[5.5]地点まで動くプログラミングを作りたいと思っており、プログラミングを組み立ててみたのですが、ビルドはできたのですが,亀は超高速で円を描くだけでした。以下にプログラミングを載せますので改善点を教えてもらえないでしょうか。恐らくsetMoveVector関数の中の書き方が違うのかなと思われます。
3
- ```c++
4
- コード
5
- ```
6
-
7
3
  ```C++
8
4
  コード
9
-
10
- ```C++
11
- コード
12
5
  ```
13
6
  #include "ros/ros.h"
14
7
  #include <geometry_msgs/Twist.h>

5

2020/06/25 14:44

投稿

sousoudig
sousoudig

スコア0

title CHANGED
File without changes
body CHANGED
@@ -6,6 +6,9 @@
6
6
 
7
7
  ```C++
8
8
  コード
9
+
10
+ ```C++
11
+ コード
9
12
  ```
10
13
  #include "ros/ros.h"
11
14
  #include <geometry_msgs/Twist.h>
@@ -95,4 +98,5 @@
95
98
  ros::spin();
96
99
  return 0;
97
100
  }
101
+
98
- 、、、
102
+ ```

4

2020/06/25 14:44

投稿

sousoudig
sousoudig

スコア0

title CHANGED
File without changes
body CHANGED
@@ -1,5 +1,8 @@
1
1
  ### 前提・実現したいこと
2
2
  私はROSを使用してturtlesimノードの亀が今いる座標軸や回転角を購読してそこから回転、移動して座標[5.5]地点まで動くプログラミングを作りたいと思っており、プログラミングを組み立ててみたのですが、ビルドはできたのですが,亀は超高速で円を描くだけでした。以下にプログラミングを載せますので改善点を教えてもらえないでしょうか。恐らくsetMoveVector関数の中の書き方が違うのかなと思われます。
3
+ ```c++
4
+ コード
5
+ ```
3
6
 
4
7
  ```C++
5
8
  コード
@@ -91,4 +94,5 @@
91
94
 
92
95
  ros::spin();
93
96
  return 0;
94
- }
97
+ }
98
+ 、、、

3

2020/06/25 14:42

投稿

sousoudig
sousoudig

スコア0

title CHANGED
File without changes
body CHANGED
@@ -4,7 +4,6 @@
4
4
  ```C++
5
5
  コード
6
6
  ```
7
- ソースコード
8
7
  #include "ros/ros.h"
9
8
  #include <geometry_msgs/Twist.h>
10
9
  #include <turtlesim/Pose.h>

2

2020/06/25 14:41

投稿

sousoudig
sousoudig

スコア0

title CHANGED
@@ -1,1 +1,1 @@
1
- 座標距離を求めたいが式が分からない。
1
+ ノード内のシュミレータロボである亀に座標[5,5]の地点まで動くようにしたい
body CHANGED
@@ -1,3 +1,95 @@
1
1
  ### 前提・実現したいこと
2
- 初心者なで計算式せん。すません。教えて下さい。
3
- 今C++でロボットの制御の勉強をしているのですが、下記画像のdxとdyを求めたいのです。しかし、途中式が分かりません。どなたか教えていただけませんでしょうか。
2
+ 私はROSを使用してturtlesimノード今いる座標軸や回転角を購読してそこら回転、移動して座標[5.5]地点で動くプログラミングを作りたと思っており、プログラミングを組み立ててみたのですが、ビルドはできたのですが,亀は超高速で円を描くだけでした以下にプログラミングを載せますので改善点を教えてもらえなでしょうか恐らくsetMoveVector関数の中の書き方が違うのかなと思われます。
3
+
4
+ ```C++
5
+ コード
6
+ ```
7
+ ソースコード
8
+ #include "ros/ros.h"
9
+ #include <geometry_msgs/Twist.h>
10
+ #include <turtlesim/Pose.h>
11
+
12
+ class turtleSim{
13
+ public:
14
+ turtleSim();
15
+ ~turtleSim();
16
+ void poseCallback(const turtlesim::PoseConstPtr& pose);
17
+ void setMoveVector(int count);
18
+ void timerCallback(const ros::TimerEvent&);
19
+
20
+ private:
21
+ ros::Publisher twist_pub;
22
+ ros::Subscriber pose_sub;
23
+ ros::Timer timer;
24
+ ros::NodeHandle nh;
25
+ };
26
+
27
+ turtleSim::turtleSim(){
28
+ twist_pub = nh.advertise<geometry_msgs::Twist>("turtle1/cmd_vel", 1000);
29
+ pose_sub = nh.subscribe<turtlesim::Pose>("turtle1/pose", 1, &turtleSim::poseCallback, this);
30
+ timer = nh.createTimer(ros::Duration(0.1), &turtleSim::timerCallback, this);
31
+
32
+ geometry_msgs::Twist twist;
33
+ twist.linear.x = 0.0;
34
+ twist.linear.y = 0.0;
35
+ twist.linear.z = 0.0;
36
+ twist.angular.x = 0.0;
37
+ twist.angular.y = 0.0;
38
+ twist.angular.z = 0.0;
39
+ twist_pub.publish(twist);
40
+ }
41
+
42
+ turtleSim::~turtleSim(){
43
+
44
+ }
45
+
46
+ void turtleSim::poseCallback(const turtlesim::PoseConstPtr& pose){
47
+ ROS_INFO("x:%f",pose->x);
48
+ }
49
+
50
+ void turtleSim::timerCallback(const ros::TimerEvent&){
51
+ setMoveVector(10);
52
+ setMoveVector(10);
53
+ }
54
+
55
+ void turtleSim::setMoveVector(int count){
56
+ int i ;
57
+ float x, y, theta, angular,pose_x,pose_y,pose_theta ;
58
+ geometry_msgs::Twist twist;
59
+ ros::Rate loop_rate(10);
60
+
61
+ x = 5.000000 - pose_x ;
62
+ y = 5.000000 - pose_y ;
63
+ theta = atan(y/x) ;
64
+ angular = 6.283185 - pose_theta ;
65
+
66
+ ROS_INFO("pose_x:%f",pose_x) ;
67
+    ROS_INFO("pose_y:%f",pose_y) ;
68
+ ROS_INFO("theta:%f",theta) ;
69
+ ROS_INFO("angular:%f",angular) ;
70
+ for(i=0;i < count; i++) {
71
+ if(x==0.000000) {
72
+ ROS_INFO("x:%f",x) ;
73
+ twist.angular.z = 1.570796 ;
74
+ twist.linear.x = y ;
75
+ twist_pub.publish(twist) ;
76
+ loop_rate.sleep() ;
77
+ }
78
+ else {
79
+ twist.angular.z = angular ;
80
+ twist.linear.x = x ;
81
+ twist.linear.y = y ;
82
+ twist_pub.publish(twist) ;
83
+ loop_rate.sleep() ;
84
+ }
85
+ }
86
+ }
87
+
88
+ int main(int argc, char **argv){
89
+ ros::init(argc, argv, "move_turtlesim");
90
+
91
+ turtleSim turtlesim;
92
+
93
+ ros::spin();
94
+ return 0;
95
+ }

1

著作権の関係

2020/06/25 14:40

投稿

sousoudig
sousoudig

スコア0

title CHANGED
File without changes
body CHANGED
@@ -1,5 +1,3 @@
1
1
  ### 前提・実現したいこと
2
2
  初心者なので計算式が分かりません。すいません。教えて下さい。
3
- 今C++でロボットの制御の勉強をしているのですが、下記画像のdxとdyを求めたいのです。しかし、途中式が分かりません。どなたか教えていただけませんでしょうか。
3
+ 今C++でロボットの制御の勉強をしているのですが、下記画像のdxとdyを求めたいのです。しかし、途中式が分かりません。どなたか教えていただけませんでしょうか。
4
- ■■な機能を実装中に以下のエラーメッセージが発生しました。
5
- ![イメージ説明](62eea82d51a7806635308b1632a8c9d6.jpeg)