Guest User

Untitled

a guest
Feb 6th, 2013
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.53 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. if [ $# -le 1 ]
  4. then
  5. echo "Error - Require Current Density (A) and time to run (s)"
  6. echo "electroplate.sh A s"
  7. exit 1
  8. fi
  9.  
  10.  
  11. currentdensity=$1 runtime=$2
  12.  
  13. echo "Starting Electroplating $currentdensity for $runtime"
  14.  
  15. # calculate the currents - still need to calculated the PWM --> Votlage
  16. # -> Current settings
  17.  
  18. let forward_current_duty_percent=currentdensity
  19. let reverse_current_duty_percent=forward_current_duty_percent*2
  20.  
  21. #setup PWM settings
  22. # -- ehrpwm.1:0 ( yellow Forward P Channel )
  23. echo 0 > /sys/class/pwm/ehrpwm.1:0/duty_percent
  24. echo 500 > /sys/class/pwm/ehrpwm.1:0/period_freq
  25. echo 50 > /sys/class/pwm/ehrpwm.1:0/duty_percent
  26. echo 0 > /sys/class/pwm/ehrpwm.1:0/polarity
  27. echo 0 > /sys/class/pwm/ehrpwm.1:0/run
  28.  
  29. # -- ehrpwm.1:1 ( red Reverse P Channel )
  30.  
  31. echo 0 > /sys/class/pwm/ehrpwm.1:1/duty_percent
  32. echo 500 > /sys/class/pwm/ehrpwm.1:1/period_freq
  33. echo 50 > /sys/class/pwm/ehrpwm.1:1/duty_percent
  34. echo 0 > /sys/class/pwm/ehrpwm.1:1/polarity
  35. echo 0 > /sys/class/pwm/ehrpwm.1:1/run
  36.  
  37. # -- ehrpwm.2:0 ( brown forward n linear Channel )
  38.  
  39. echo 0 > /sys/class/pwm/ehrpwm.2:0/duty_percent
  40. echo 80000 > /sys/class/pwm/ehrpwm.2:0/period_freq
  41. echo $forward_current_duty_percent > /sys/class/pwm/ehrpwm.2:0/duty_perc
  42. ent
  43. echo 0 > /sys/class/pwm/ehrpwm.2:0/run
  44.  
  45. # -- ehrpwm.2:1 ( green reverse n linear Channel )
  46.  
  47. echo 0 > /sys/class/pwm/ehrpwm.2:1/duty_percent
  48. echo 80000 > /sys/class/pwm/ehrpwm.2:1/period_freq
  49. echo $reverse_current_duty_percent > /sys/class/pwm/ehrpwm.2:1/duty_perc
  50. ent
  51. echo 0 > /sys/class/pwm/ehrpwm.2:1/run
  52.  
  53.  
  54. timer=$2
  55.  
  56. for (( i = 1; i <= timer; i++ )) ### Outer for loop ###
  57. do
  58. for (( j = 1 ; j <= 25; j++ )) ### Inner for loop ###
  59. do
  60. echo 1 > /sys/class/pwm/ehrpwm.1:0/run
  61. echo 1 > /sys/class/pwm/ehrpwm.2:1/run
  62. sleep 0.012
  63. echo 0 > /sys/class/pwm/ehrpwm.1:0/run
  64. echo 0 > /sys/class/pwm/ehrpwm.2:1/run
  65.  
  66. echo 1 > /sys/class/pwm/ehrpwm.1:1/run
  67. echo 1 > /sys/class/pwm/ehrpwm.2:0/run
  68. sleep 0.004
  69. echo 0 > /sys/class/pwm/ehrpwm.1:1/run
  70. echo 0 > /sys/class/pwm/ehrpwm.2:0/run
  71. done
  72. echo "$i" #### print the new line ###
  73. done
Advertisement
Add Comment
Please, Sign In to add comment