car.sh 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. #!/bin/sh
  2. set -x
  3. echo "HTTP/1.1 200"
  4. echo -e "Content-type: text/html\n\n"
  5. echo ""
  6. read POST_STRING
  7. SPEED=$(echo $POST_STRING | sed 's/.*speed=//;s/\&.*//')
  8. ACTION=$(echo $POST_STRING | sed 's/.*action=//;s/\&.*//')
  9. SLEEP_TIME=$(echo $POST_STRING | sed 's/.*sleep_time=//;s/\&.*//')
  10. echo "raw post string: $POST_STRING"
  11. echo "speed: $SPEED"
  12. echo "action: $ACTION"
  13. echo "sleep: $SLEEP_TIME"
  14. if [ "$ACTION" = "forward" ]; then
  15. if [ "$SPEED" = "slow" ]; then
  16. echo "slow"
  17. echo -ne "\xaa\x55\x43\x06\x29\x80\xca\x00\x02\xbb" > /dev/ttyUSB0
  18. else
  19. echo "forward"
  20. echo -ne "\xaa\x55\x43\x06\x29\x80\xe3\x00\x02\xd4" > /dev/ttyUSB0
  21. fi
  22. sleep $SLEEP_TIME
  23. echo -ne "\xaa\x55\x43\x06\x29\x80\x80\x00\x02\x71" > /dev/ttyUSB0
  24. elif [ "$ACTION" = "reverse" ]; then
  25. echo "reverse"
  26. echo -ne "\xaa\x55\x43\x06\x29\x80\x36\x00\x02\x27" > /dev/ttyUSB0
  27. sleep $SLEEP_TIME
  28. echo -ne "\xaa\x55\x43\x06\x29\x80\x80\x00\x02\x71" > /dev/ttyUSB0
  29. elif [ "$ACTION" = "left" ]; then
  30. echo "left"
  31. echo -ne "\xaa\x55\x43\x06\x29\x76\x81\x00\x02\x68" > /dev/ttyUSB0
  32. sleep $SLEEP_TIME
  33. echo -ne "\xaa\x55\x43\x06\x29\x80\x80\x00\x02\x71" > /dev/ttyUSB0
  34. elif [ "$ACTION" = "right" ]; then
  35. echo "right"
  36. echo -ne "\xaa\x55\x43\x06\x29\x8a\x81\x00\x02\x7c" > /dev/ttyUSB0
  37. sleep $SLEEP_TIME
  38. echo -ne "\xaa\x55\x43\x06\x29\x80\x80\x00\x02\x71" > /dev/ttyUSB0
  39. elif [ "$ACTION" = "forward_left" ]; then
  40. echo "left_forward"
  41. echo -ne "\xaa\x55\x43\x06\x29\x76\xe3\x00\x02\xca" > /dev/ttyUSB0
  42. sleep $SLEEP_TIME
  43. echo -ne "\xaa\x55\x43\x06\x29\x80\x80\x00\x02\x71" > /dev/ttyUSB0
  44. elif [ "$ACTION" = "forward_right" ]; then
  45. echo "right_forward"
  46. echo -ne "\xaa\x55\x43\x06\x29\x8a\xe3\x00\x02\xde" > /dev/ttyUSB0
  47. sleep $SLEEP_TIME
  48. echo -ne "\xaa\x55\x43\x06\x29\x80\x80\x00\x02\x71" > /dev/ttyUSB0
  49. elif [ "$ACTION" = "reverse_left" ]; then
  50. echo "left_reverse"
  51. echo -ne "\xaa\x55\x43\x06\x29\x76\x36\x00\x02\x1d" > /dev/ttyUSB0
  52. sleep $SLEEP_TIME
  53. echo -ne "\xaa\x55\x43\x06\x29\x80\x80\x00\x02\x71" > /dev/ttyUSB0
  54. elif [ "$ACTION" = "reverse_right" ]; then
  55. echo "right_reverse"
  56. echo -ne "\xaa\x55\x43\x06\x29\x8a\x36\x00\x02\x31" > /dev/ttyUSB0
  57. sleep $SLEEP_TIME
  58. echo -ne "\xaa\x55\x43\x06\x29\x80\x80\x00\x02\x71" > /dev/ttyUSB0
  59. elif [ "$ACTION" = "all_stop" ]; then
  60. echo "all stop"
  61. echo -ne "\xaa\x55\x43\x06\x29\x80\x80\x00\x02\x71" > /dev/ttyUSB0
  62. elif [ "$ACTION" = "headlight_on" ]; then
  63. echo "headlight_on"
  64. echo -ne "\xaa\x55\x43\x04\x1e\x01\x01\x65" > /dev/ttyUSB0
  65. elif [ "$ACTION" = "headlight_off" ]; then
  66. echo "headlight_off"
  67. echo -ne "\xaa\x55\x43\x04\x1e\x02\x01\x66" > /dev/ttyUSB0
  68. elif [ "$ACTION" = "irled_on" ]; then
  69. echo "irled_on"
  70. cmd irled on > /dev/null
  71. elif [ "$ACTION" = "irled_off" ]; then
  72. echo "irled_off"
  73. cmd irled off > /dev/null
  74. elif [ "$ACTION" = "honk" ]; then
  75. echo "honk"
  76. /opt/wz_mini/bin/cmd aplay /opt/wz_mini/usr/share/audio/honk.wav 70 > /dev/null 2>&1 &
  77. else
  78. echo "no input"
  79. fi