Coder Social home page Coder Social logo

Comments (19)

liwenz avatar liwenz commented on July 22, 2024

3 command total
No. 1:
roslaunch spot_micro_motion_cmd motion_cmd.launch run_standalone:=true

started roslaunch server http://leon-desktop:46693/

SUMMARY

PARAMETERS

  • /rosdistro: melodic
  • /rosversion: 1.14.10
  • /spot_micro_motion_cmd_node/LB_1/center: 306
  • /spot_micro_motion_cmd_node/LB_1/center_angle_deg: -0.4
  • /spot_micro_motion_cmd_node/LB_1/direction: -1
  • /spot_micro_motion_cmd_node/LB_1/num: 9
  • /spot_micro_motion_cmd_node/LB_1/range: 374
  • /spot_micro_motion_cmd_node/LB_2/center: 306
  • /spot_micro_motion_cmd_node/LB_2/center_angle_deg: 38.7
  • /spot_micro_motion_cmd_node/LB_2/direction: 1
  • /spot_micro_motion_cmd_node/LB_2/num: 8
  • /spot_micro_motion_cmd_node/LB_2/range: 392
  • /spot_micro_motion_cmd_node/LB_3/center: 306
  • /spot_micro_motion_cmd_node/LB_3/center_angle_deg: -73.9
  • /spot_micro_motion_cmd_node/LB_3/direction: 1
  • /spot_micro_motion_cmd_node/LB_3/num: 7
  • /spot_micro_motion_cmd_node/LB_3/range: 390
  • /spot_micro_motion_cmd_node/LF_1/center: 306
  • /spot_micro_motion_cmd_node/LF_1/center_angle_deg: -7.6
  • /spot_micro_motion_cmd_node/LF_1/direction: 1
  • /spot_micro_motion_cmd_node/LF_1/num: 12
  • /spot_micro_motion_cmd_node/LF_1/range: 389
  • /spot_micro_motion_cmd_node/LF_2/center: 306
  • /spot_micro_motion_cmd_node/LF_2/center_angle_deg: 38.6
  • /spot_micro_motion_cmd_node/LF_2/direction: 1
  • /spot_micro_motion_cmd_node/LF_2/num: 11
  • /spot_micro_motion_cmd_node/LF_2/range: 397
  • /spot_micro_motion_cmd_node/LF_3/center: 306
  • /spot_micro_motion_cmd_node/LF_3/center_angle_deg: -82.8
  • /spot_micro_motion_cmd_node/LF_3/direction: 1
  • /spot_micro_motion_cmd_node/LF_3/num: 10
  • /spot_micro_motion_cmd_node/LF_3/range: 387
  • /spot_micro_motion_cmd_node/RB_1/center: 306
  • /spot_micro_motion_cmd_node/RB_1/center_angle_deg: -4.4
  • /spot_micro_motion_cmd_node/RB_1/direction: 1
  • /spot_micro_motion_cmd_node/RB_1/num: 6
  • /spot_micro_motion_cmd_node/RB_1/range: 411
  • /spot_micro_motion_cmd_node/RB_2/center: 306
  • /spot_micro_motion_cmd_node/RB_2/center_angle_deg: -35.4
  • /spot_micro_motion_cmd_node/RB_2/direction: 1
  • /spot_micro_motion_cmd_node/RB_2/num: 5
  • /spot_micro_motion_cmd_node/RB_2/range: 396
  • /spot_micro_motion_cmd_node/RB_3/center: 306
  • /spot_micro_motion_cmd_node/RB_3/center_angle_deg: 85.8
  • /spot_micro_motion_cmd_node/RB_3/direction: 1
  • /spot_micro_motion_cmd_node/RB_3/num: 4
  • /spot_micro_motion_cmd_node/RB_3/range: 396
  • /spot_micro_motion_cmd_node/RF_1/center: 306
  • /spot_micro_motion_cmd_node/RF_1/center_angle_deg: -5.4
  • /spot_micro_motion_cmd_node/RF_1/direction: -1
  • /spot_micro_motion_cmd_node/RF_1/num: 3
  • /spot_micro_motion_cmd_node/RF_1/range: 396
  • /spot_micro_motion_cmd_node/RF_2/center: 306
  • /spot_micro_motion_cmd_node/RF_2/center_angle_deg: -27.6
  • /spot_micro_motion_cmd_node/RF_2/direction: 1
  • /spot_micro_motion_cmd_node/RF_2/num: 2
  • /spot_micro_motion_cmd_node/RF_2/range: 389
  • /spot_micro_motion_cmd_node/RF_3/center: 306
  • /spot_micro_motion_cmd_node/RF_3/center_angle_deg: 88.2
  • /spot_micro_motion_cmd_node/RF_3/direction: 1
  • /spot_micro_motion_cmd_node/RF_3/num: 1
  • /spot_micro_motion_cmd_node/RF_3/range: 372
  • /spot_micro_motion_cmd_node/alpha: 0.5
  • /spot_micro_motion_cmd_node/back_body_balance_shift: 0.005
  • /spot_micro_motion_cmd_node/beta: 0.5
  • /spot_micro_motion_cmd_node/body_length: 0.186
  • /spot_micro_motion_cmd_node/body_shift_phases: [1, 2, 3, 4, 5, 6...
  • /spot_micro_motion_cmd_node/body_width: 0.078
  • /spot_micro_motion_cmd_node/debug_mode: False
  • /spot_micro_motion_cmd_node/default_stand_height: 0.155
  • /spot_micro_motion_cmd_node/dt: 0.02
  • /spot_micro_motion_cmd_node/foot_height_time_constant: 0.02
  • /spot_micro_motion_cmd_node/fwd_body_balance_shift: 0.035
  • /spot_micro_motion_cmd_node/hip_link_length: 0.055
  • /spot_micro_motion_cmd_node/lb_contact_phases: [1, 1, 1, 1, 1, 0...
  • /spot_micro_motion_cmd_node/lf_contact_phases: [1, 1, 1, 1, 1, 1...
  • /spot_micro_motion_cmd_node/lidar_x_pos: 0.045
  • /spot_micro_motion_cmd_node/lidar_y_pos: 0.0
  • /spot_micro_motion_cmd_node/lidar_yaw_angle: 180
  • /spot_micro_motion_cmd_node/lidar_z_pos: 0.085
  • /spot_micro_motion_cmd_node/lie_down_foot_x_offset: 0.065
  • /spot_micro_motion_cmd_node/lie_down_height: 0.083
  • /spot_micro_motion_cmd_node/lower_leg_link_length: 0.13
  • /spot_micro_motion_cmd_node/max_fwd_velocity: 0.4
  • /spot_micro_motion_cmd_node/max_side_velocity: 0.4
  • /spot_micro_motion_cmd_node/max_yaw_rate: 0.35
  • /spot_micro_motion_cmd_node/num_phases: 8
  • /spot_micro_motion_cmd_node/num_servos: 12
  • /spot_micro_motion_cmd_node/overlap_time: 0.0
  • /spot_micro_motion_cmd_node/plot_mode: False
  • /spot_micro_motion_cmd_node/publish_odom: True
  • /spot_micro_motion_cmd_node/rb_contact_phases: [1, 0, 1, 1, 1, 1...
  • /spot_micro_motion_cmd_node/rf_contact_phases: [1, 1, 1, 0, 1, 1...
  • /spot_micro_motion_cmd_node/run_standalone: True
  • /spot_micro_motion_cmd_node/servo_max_angle_deg: 82.5
  • /spot_micro_motion_cmd_node/side_body_balance_shift: 0.015
  • /spot_micro_motion_cmd_node/stand_back_x_offset: -0.0
  • /spot_micro_motion_cmd_node/stand_front_x_offset: 0.015
  • /spot_micro_motion_cmd_node/standalone_mode: False
  • /spot_micro_motion_cmd_node/swing_time: 0.36
  • /spot_micro_motion_cmd_node/transit_angle_rl: 0.35
  • /spot_micro_motion_cmd_node/transit_rl: 0.06
  • /spot_micro_motion_cmd_node/transit_tau: 0.3
  • /spot_micro_motion_cmd_node/upper_leg_link_length: 0.1075
  • /spot_micro_motion_cmd_node/z_clearance: 0.05

NODES
/
spot_micro_motion_cmd_node (spot_micro_motion_cmd/spot_micro_motion_cmd_node)

auto-starting new master
process[master]: started with pid [3537]
ROS_MASTER_URI=http://localhost:11311

No. 2
On a computer:(ubuntu16 vm)
roslaunch spot_micro_keyboard_command keyboard_command.launch run_rviz:=true

dog display,but I don't know how to control to move, only know control interface.
stand walk idle
in walk
qweasd seem no function

No. 3
roslaunch i2cpwm_board i2cpwm_node.launch

on pi 3B
from : http://bradanlane.gitlab.io/ros-i2cpwmboard/

PARAMETERS

  • /rosdistro: melodic
  • /rosversion: 1.14.10

NODES
/
i2cpwm_board_node (i2cpwm_board/i2cpwm_board)

auto-starting new master
process[master]: started with pid [3584]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to fffe69ea-941c-11eb-b0be-b827eb8897a3
process[rosout-1]: started with pid [3595]
started core service [/rosout]
process[i2cpwm_board_node-2]: started with pid [3598]
sudo: no tty present and no askpass program specified
[i2cpwm_board_node-2] process has died [pid 3598, exit code 1, cmd sudo /home/leon/dog/devel/lib/i2cpwm_board/i2cpwm_board __name:=i2cpwm_board_node __log:=/home/leon/.ros/log/fffe69ea-941c-11eb-b0be-b827eb8897a3/i2cpwm_board_node-2.log].
log file: /home/leon/.ros/log/fffe69ea-941c-11eb-b0be-b827eb8897a3/i2cpwm_board_node-2*.log

2021-04-02 23_08_15-Window

from spotmicro.

mike4192 avatar mike4192 commented on July 22, 2024

If spot_micro_motion_cmd in standalone mode, you do not need to run the i2cpwm_board node.

I think you need to verify you can exchange communication between your ubuntu virtual machine and the raspberry pi.

They must be connected on the same network, or to eachother. You may need to modify network settings in the virtual machine software to get communication with the raspberry pi.

First verify you can ping the ip address of the raspberry pi from your ubuntu virtual machine. Find what ip address the raspbery pi has on it's wireless network interface through ifconfig.

On the virtual machine try pinging that ip address, example: ping 192.168.1.xx where xx is the last part of the address the pi has.

On your virtual machine you need to make sure you set some environment variables so nodes know the ROS master is on the pi. You may need to set ROS_MASTER_URI and ROS_IP. I have the following in my ~/.bashrc file. You'd have to replace http://ubunturospi.local with the ip address of your raspberry pi. You would also need to set ROS_IP to your virtual machine's ip address.

export ROS_MASTER_URI=http://ubunturospi.local:11311 # Set IP of ros master, raspberry pi in this case
export ROS_IP=$(hostname -I | cut -f1 -d' ') # set own ros ip environment variable

alias rosinit="source /home/mike/catkin_ws/devel/setup.bash && export ROS_WORKSPACE=~/catkin_ws"

Before trying to run this software, I would make sure you can successfully run a ROS tutorial example, where one node is on the Rapsberry pi, and one node is on the virtual machine. For example, the simple publisher and subscriber: http://wiki.ros.org/ROS/Tutorials/WritingPublisherSubscriber%28python%29

The following video may help guide you as a basic ros tutorial for running stuff on a raspberr pu: https://www.youtube.com/watch?v=iLiI_IRedhI

from spotmicro.

liwenz avatar liwenz commented on July 22, 2024

Thanks for your reply!
My pc(win10) and pi are the same wifi network and I use ssh to control pi on win10. But my vm (on win10) has some problem.
Maybe I played the docker then vm ubuntu16 lost local network. At first,VM ubuntu 16 could not work then I close Hyper-V and vm rework.
I don't know how to fix it.

The robot should work on only one pi . Maybe more terminal. Then remote node control mode.
I bought 8g pi 4b on March 13, but Amazon delay to next week.
At first, i2c servo should work. The servo rotate on my zynq 7010 system(Xilinx fpga) by direct pwm and i2c two way.

Or it should be simulate on a ROS and I understand Kinematics.
https://spotmicroai.readthedocs.io/en/latest/simulation/ seems a good site.

from spotmicro.

AlekseyErmolaev avatar AlekseyErmolaev commented on July 22, 2024

Hey! I didn't create a new topic. I hope you can help me.
I have a small problem and I cannot figure out where to look for a solution.
I have RPi4(ubiquityrobot), ubuntu 16.04 laptop, terminal with ssh. catkin_make is 100% assembled.
I use roslaunch spot_micro_keyboard_command keyboard_command.launch run_rviz:=true on laptop and roslaunch spot_micro_motion_cmd motion_cmd.launch run_standalone:=true on RPi.
After the command "stand" appears:

[ WARN] [1617730100.302570705]: Joint LF_2, Angle: 37.42
[ WARN] [1617730100.302659575]: Proportional Command below -1.0 was computed, clipped to -1.0
[ WARN] [1617730100.302758926]: Joint LF_3, Angle: -128.00
[ WARN] [1617730100.302853740]: Proportional Command above +1.0 was computed, clipped to 1.0
[ WARN] [1617730100.302923776]: Joint RB_3, Angle: 128.14
[ WARN] [1617730100.303019090]: Proportional Command above +1.0 was computed, clipped to 1.0
[ WARN] [1617730100.303093126]: Joint RF_3, Angle: 128.00
[ WARN] [1617730100.322427290]: Proportional Command below -1.0 was computed, clipped to -1.0
[ WARN] [1617730100.322514511]: Joint LB_3, Angle: -128.15
[ WARN] [1617730100.322585288]: Proportional Command above +1.0 was computed, clipped to 1.0

Angle values change. Joint numbers do not change.
In rviz, the image of the legs begins to twitch.
I really hope for your help!

from spotmicro.

mike4192 avatar mike4192 commented on July 22, 2024

Those are the right two commands that should be able to start up the software. Did you modify the configuration at all? This warning means a joint angle beyond the intended travel range was computed for some reason.

If the legs are twitching there may inadvertently be another node running trying to command the leg servos. Make sure your not running two instances of anything.

You can try running the motion command node on your laptop instead of the pi to see if you get any different result.

Lastly, it could be some artifact of running on a rpi4 versus a rpi3. I don't have one to test so I am unsure what impact it may have, though I think others have gotten it working on a rpi4.

@liwenz Sorry, I don't really know how to help you anymore.

from spotmicro.

AlekseyErmolaev avatar AlekseyErmolaev commented on July 22, 2024

Here is a screenshot of my table
1
Maybe you can see what's wrong

from spotmicro.

liwenz avatar liwenz commented on July 22, 2024

I reinstall ubuntu mate 16(pi) and vm ubuntu 16 (another pc)
pi ip: 192.168.2.80
vm ip:192.168.2.85
but I don't know the remote publisher,
What should start in pi, and what should do on vm?

roslaunch servo_move_keyboard keyboard_move.launch
it seems to work well.
No error, and I know choose the servo number, and x,y,z show the angles.

Should the servo run to min,center,max, or only a config?
My servo did not run

from spotmicro.

liwenz avatar liwenz commented on July 22, 2024

roslaunch servo_move_keyboard keyboard_move.launch
it seems run ok as follow, but servo did not move, then logic analyzer check it. There is no wave.
From doc, it should control the servo move and there should be waves.

Which servo to control? Enter a number 1 through 12: 1
Enter command, q to go back to option select:
Servo 0 cmd: 520
Servo 0 cmd: 510
Servo 0 cmd: 500
Servo 0 cmd: 490
Servo 0 cmd: 480
Servo 0 cmd: 470
Servo 0 cmd: 460
Servo 0 cmd: 450
Servo 0 cmd: 440
Servo 0 cmd: 430
Servo 0 cmd: 420
Servo 0 cmd: 410
Servo 0 cmd: 400
Servo 0 cmd: 306
Servo 0 cmd: 83
Servo 0 cmd: 520
Servo 0 cmd: 520
Servo 0 cmd: 510
Servo 0 cmd: 500
Servo 0 cmd: 490
Servo 0 cmd: 489
Servo 0 cmd: 488
Servo 0 cmd: 487
Servo 0 cmd: 486
Key not in valid key commands, try again
Servo 0 cmd: 476
Servo 0 cmd: 466
Servo 0 cmd: 465
Servo 0 cmd: 464
Servo 0 cmd: 465
Servo 0 cmd: 466
Servo 0 cmd: 476
Servo 0 cmd: 486
Servo 0 cmd: 496

from spotmicro.

mike4192 avatar mike4192 commented on July 22, 2024

@liwenz you should first verify your VM can communicate with the raspberry pi. For example, try pinging the pi from your VM:
ping 192.168.2.80
and vice versa from the raspberry pi. If not, you need to figure that out first.

Next, try running an example publisher and subscriber in ROS, where one node is running on the raspberry pi and the other on the VM, and see if you can get that to work: http://wiki.ros.org/ROS/Tutorials/WritingPublisherSubscriber%28python%29

from spotmicro.

mike4192 avatar mike4192 commented on July 22, 2024

@AlekseyErmolaev your config values look reasonable, or at least they don't have any obvious errors, but they are very different from my set, which is the default set on this repo. However the values are entirely dependent on the positions a servo is installed.

I would double check you followed the calibration directions. Try spot checking a few servos using your calibration table. For example, for the right front lower leg joint (the knee), according to your config table if you command it to a pwm value of 306, will the lower leg link be position truly at 0 degrees?

from spotmicro.

liwenz avatar liwenz commented on July 22, 2024

ping and netccat from pi to vm are ok now.

Remote machine topic listed, but no data transmitted

from spotmicro.

mike4192 avatar mike4192 commented on July 22, 2024

Which topic?

from spotmicro.

liwenz avatar liwenz commented on July 22, 2024

I forgot, maybe turtle_cmd, I check it again.
publisher, the turtle move.

from spotmicro.

liwenz avatar liwenz commented on July 22, 2024

my test come from: http://wiki.ros.org/ROS/Tutorials/MultipleMachines

ssh hal
roscore

ssh marvin
export ROS_MASTER_URI=http://hal:11311
rosrun rospy_tutorials listener.py
py => rosrun turtlesim turtlesim_node

ssh hal
export ROS_MASTER_URI=http://hal:11311
rosrun rospy_tutorials talker.py
py=> rostopic pub -1 /turtle1/cmd_vel geometry_msgs/Twist -- '[2.0, 0.0, 0.0]' '[0.0, 0.0, 1.8]'

it could control the turtle move in one pc or pi
but remote could not work

rpstopic list work well.

leon@leon:$ rostopic list
/rosout
/rosout_agg
/turtle1/cmd_vel
/turtle1/color_sensor
/turtle1/pose
leon@leon:
$

from spotmicro.

liwenz avatar liwenz commented on July 22, 2024

roslaunch servo_move_keyboard keyboard_move.launch
the launch file includes the node:
if="$(arg run_i2c_pwmboard)" name="i2cpwm_board_node" pkg="i2cpwm_board" type="i2cpwm_board" output="screen">
how to set "$(arg run_i2c_pwmboard)" ?
I think I did not start it, so i2cpwm_board did not start.

roslaunch servo_move_keyboard keyboard_move.launch run_i2cpwm_board: =1
I can't change to run i2cpwm_board
leon@leon:~$ rosnode list
/rosout
/servo_move_keyboard_node

Then I edit the launch file , defualt =true
it run:
leon@leon:~$ rosnode list
/i2cpwm_board_node
/rosout
/servo_move_keyboard_node

But I can't get signal on pwm.
How to launch that I could test the pwm signal and run the servo

from spotmicro.

mike4192 avatar mike4192 commented on July 22, 2024

Not sure what to tell you, running your command works for me, specifically:
roslaunch servo_move_keyboard keyboard_move.launch run_i2c_pwmboard:=true
And the i2c pwmboard node runs.

Note, however, the i2c_pwmboard node will only work correctly if run on a raspberry pi with the pwm board installed and with the i2c, power, and ground pins correctly connected.

Is your pca9685 board powered correctly?. The board requires power both for the board circuitry, and for the servo power. See the following diagram for example, note the top power input from an external 5v power source.
https://steemitimages.com/1280x0/https://res.cloudinary.com/hpiynhbhq/image/upload/v1518024645/eh21urwjil2ply3ay2gz.png

The pi alone probably will not supply enough power to allow the servos to move.

from spotmicro.

liwenz avatar liwenz commented on July 22, 2024

roslaunch servo_move_keyboard keyboard_move.launch run_i2c_pwmboard:=true
it works well. Now I could control servo.
What's next? led display?
or roslaunch spot_micro_motion_cmd motion_cmd.launch run_standalone:=false

from spotmicro.

kennydedavion avatar kennydedavion commented on July 22, 2024

Hi, I also have a problem, more.
I am attaching a picture. According to the possibility from the IT specialist at Ros, I had to install a version of melodic.
according to the instruction on the instructable "Rpi4 Lidar melodic Ros".
I can't run anything right now.

i2cpwm_board display reports error:
[FATAL] [1622811777.479435609]: Failed to open I2C bus (null)

spot_micro_motion_command reports an error:
RLException: [spot_micro_motion_cmdConfig-version.cmakerostopic] is neither a launch file in package [spot_micro_motion_cmd] nor is [spot_micro_motion_cmd] a launch file name
The traceback for the exception was written to the log file.

Although everything is in place, but the different versions without catkin have changed, and no one is able to tell me now how to run it?
ps: all the repair options I found and tried, either didn't help or decided the system so that I had to format the storage and reinstall everything.

Thanks for your instructions. There is no arduino in your spot? do you control the rpi servo-shield?
All the problems that, Arduino UNO, Rpi3b and Raspbian with ROS Melodic, contain with this mode, and there is no person who knows all three of these topics, so there is no help for me.

I'm trying to find a solution to combine Ros in such a way that it reads and writes everything to UNO just like the Arduino IDE and its SerialMonitor.

Any ideas to help?
Jacob

Výstřižek6

from spotmicro.

liwenz avatar liwenz commented on July 22, 2024

where could I find the geometry data, as leg lenth, the arm coordinate,angle.

from spotmicro.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.