capoblo 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 529e7df166f38fdc75da10d979b9749430f6f947
4
- data.tar.gz: 2ed170a3f5ba9907193951930982c7b4ca8fc49a
3
+ metadata.gz: bf335625e6367c5ba888ff2911dd5b1e95ba1ddf
4
+ data.tar.gz: f86a3ca78e4d9ad203d50ac5fd864cf254108441
5
5
  SHA512:
6
- metadata.gz: 39b7b5b6dcbba55786b6cff2faab7358d463370426181dd358f4218c01eb11ce4fcb62cfbcb8f4d61facfc06cdf28ec4671256f294caa1acf6c293b0728bc186
7
- data.tar.gz: 4975e1ccdd48187620904cf4411bd72c008b538a8fd7adf8f88ea052303031a2dfb718346b52d00c6f4efd90f672f5c85864a7e8b797faaf363101e88eceaa16
6
+ metadata.gz: fb5e9f11bf2df79a26777787ff50e56ff29b690518ad3bad5510f70277fee7ad9009b8d8728b61af083b7722db7cdc8fe077c1107cef5c382514b390603b949a
7
+ data.tar.gz: 1940f520c5c3cc4382619feb4d3d070e10f263af5652ce698616c47de47bd48a24b4f647e6dcebb51a6c6fbde2191914fe92755f8cae949a363d67afe3f1eab7
data/.gitignore CHANGED
@@ -7,4 +7,5 @@
7
7
  /pkg/
8
8
  /spec/reports/
9
9
  /tmp/
10
- /.idea
10
+ /.idea
11
+ *.gem
@@ -3,6 +3,7 @@ require 'rubygems'
3
3
  $:.unshift File.expand_path '../lib', File.dirname(__FILE__)
4
4
 
5
5
  require "capoblo"
6
+ require "capoblo/interface_connection"
6
7
 
7
8
 
8
9
  ## Connected Arduinos Information
@@ -1,164 +1,166 @@
1
- class ArduinoMoves
1
+ module Capoblo
2
+ class ArduinoMoves
2
3
 
3
- attr_accessor :arduino
4
+ attr_accessor :arduino
4
5
 
5
- MIN_POWER = 60
6
-
7
- ## For Two Motors
8
- LEFT_DIGITAL_BACKWARD = 5 # Input3 connected to pin 5
9
- LEFT_DIGITAL_FORWARD = 4 # Input4 connected to pin 4
10
- LEFT_ANALOG_SIGNAL = 3 # ENB connected to pin 3 of Arduino
11
- RIGHT_DIGITAL_BACKWARD = 8 # Input3 connected to pin 5
12
- RIGHT_DIGITAL_FORWARD = 7 # Input4 connected to pin 4
13
- RIGHT_ANALOG_SIGNAL = 6 # ENB connected to pin 3 of Arduino
14
-
15
-
16
- def initialize
17
- super
18
- self.arduino = ARDUINO_ONE
6
+ MIN_POWER = 60
19
7
 
20
8
  ## For Two Motors
21
- self.arduino.pin_mode LEFT_DIGITAL_BACKWARD, ArduinoFirmata::OUTPUT
22
- self.arduino.pin_mode LEFT_DIGITAL_FORWARD, ArduinoFirmata::OUTPUT
23
- self.arduino.pin_mode LEFT_ANALOG_SIGNAL, ArduinoFirmata::OUTPUT
24
- self.arduino.pin_mode RIGHT_DIGITAL_BACKWARD, ArduinoFirmata::OUTPUT
25
- self.arduino.pin_mode RIGHT_DIGITAL_FORWARD, ArduinoFirmata::OUTPUT
26
- self.arduino.pin_mode RIGHT_ANALOG_SIGNAL, ArduinoFirmata::OUTPUT
9
+ LEFT_DIGITAL_BACKWARD = 5 # Input3 connected to pin 5
10
+ LEFT_DIGITAL_FORWARD = 4 # Input4 connected to pin 4
11
+ LEFT_ANALOG_SIGNAL = 3 # ENB connected to pin 3 of Arduino
12
+ RIGHT_DIGITAL_BACKWARD = 8 # Input3 connected to pin 5
13
+ RIGHT_DIGITAL_FORWARD = 7 # Input4 connected to pin 4
14
+ RIGHT_ANALOG_SIGNAL = 6 # ENB connected to pin 3 of Arduino
15
+
16
+
17
+ def initialize
18
+ super
19
+ self.arduino = ARDUINO_ONE
20
+
21
+ ## For Two Motors
22
+ self.arduino.pin_mode LEFT_DIGITAL_BACKWARD, ArduinoFirmata::OUTPUT
23
+ self.arduino.pin_mode LEFT_DIGITAL_FORWARD, ArduinoFirmata::OUTPUT
24
+ self.arduino.pin_mode LEFT_ANALOG_SIGNAL, ArduinoFirmata::OUTPUT
25
+ self.arduino.pin_mode RIGHT_DIGITAL_BACKWARD, ArduinoFirmata::OUTPUT
26
+ self.arduino.pin_mode RIGHT_DIGITAL_FORWARD, ArduinoFirmata::OUTPUT
27
+ self.arduino.pin_mode RIGHT_ANALOG_SIGNAL, ArduinoFirmata::OUTPUT
27
28
 
28
- end
29
+ end
29
30
 
30
- def run_forward(power = MIN_POWER, times = 0)
31
- set_all_forward
32
- if times == 0
33
- soft_run true, power
34
- else
35
- soft_run true, power
36
- sleep times
37
- stop_all
31
+ def run_forward(power = MIN_POWER, times = 0)
32
+ set_all_forward
33
+ if times == 0
34
+ soft_run true, power
35
+ else
36
+ soft_run true, power
37
+ sleep times
38
+ stop_all
39
+ end
38
40
  end
39
- end
40
41
 
41
- def run_backward(power = MIN_POWER, times = 0)
42
- set_all_backward
43
- if times == 0
44
- soft_run true, power
45
- else
46
- soft_run true, power
47
- sleep times
48
- stop_all
42
+ def run_backward(power = MIN_POWER, times = 0)
43
+ set_all_backward
44
+ if times == 0
45
+ soft_run true, power
46
+ else
47
+ soft_run true, power
48
+ sleep times
49
+ stop_all
50
+ end
49
51
  end
50
- end
51
52
 
52
- def rotate_clockwise
53
- set_left_forward
54
- set_right_backward
55
- soft_run
56
- end
53
+ def rotate_clockwise
54
+ set_left_forward
55
+ set_right_backward
56
+ soft_run
57
+ end
57
58
 
58
- def rotate_anticlockwise
59
- set_left_backward
60
- set_right_forward
61
- soft_run
62
- end
59
+ def rotate_anticlockwise
60
+ set_left_backward
61
+ set_right_forward
62
+ soft_run
63
+ end
63
64
 
64
- def turn_right(times = 3)
65
- set_left_forward
66
- set_right_forward
67
- run(LEFT_ANALOG_SIGNAL, 125)
68
- run(RIGHT_ANALOG_SIGNAL, 65)
69
- sleep times
70
- end
65
+ def turn_right(times = 3)
66
+ set_left_forward
67
+ set_right_forward
68
+ run(LEFT_ANALOG_SIGNAL, 125)
69
+ run(RIGHT_ANALOG_SIGNAL, 65)
70
+ sleep times
71
+ end
71
72
 
72
73
 
73
- def turn_left(times = 3)
74
- set_left_forward
75
- set_right_forward
76
- run(LEFT_ANALOG_SIGNAL, 65)
77
- run(RIGHT_ANALOG_SIGNAL, 125)
78
- sleep times
79
- end
74
+ def turn_left(times = 3)
75
+ set_left_forward
76
+ set_right_forward
77
+ run(LEFT_ANALOG_SIGNAL, 65)
78
+ run(RIGHT_ANALOG_SIGNAL, 125)
79
+ sleep times
80
+ end
80
81
 
81
- def turn_back_right(times = 3)
82
- set_left_backward
83
- set_right_backward
84
- run(LEFT_ANALOG_SIGNAL, 125)
85
- run(RIGHT_ANALOG_SIGNAL, 65)
86
- sleep times
87
- end
82
+ def turn_back_right(times = 3)
83
+ set_left_backward
84
+ set_right_backward
85
+ run(LEFT_ANALOG_SIGNAL, 125)
86
+ run(RIGHT_ANALOG_SIGNAL, 65)
87
+ sleep times
88
+ end
88
89
 
89
- def turn_back_left(times = 3)
90
- set_left_backward
91
- set_right_backward
92
- run(LEFT_ANALOG_SIGNAL, 65)
93
- run(RIGHT_ANALOG_SIGNAL, 125)
94
- sleep times
95
- end
90
+ def turn_back_left(times = 3)
91
+ set_left_backward
92
+ set_right_backward
93
+ run(LEFT_ANALOG_SIGNAL, 65)
94
+ run(RIGHT_ANALOG_SIGNAL, 125)
95
+ sleep times
96
+ end
96
97
 
97
98
 
98
- def stop_all
99
- run(LEFT_ANALOG_SIGNAL, 0)
100
- run(RIGHT_ANALOG_SIGNAL, 0)
101
- arduino.digital_write LEFT_DIGITAL_BACKWARD, false
102
- arduino.digital_write LEFT_DIGITAL_FORWARD, true
103
- arduino.digital_write RIGHT_DIGITAL_BACKWARD, false
104
- arduino.digital_write RIGHT_DIGITAL_FORWARD, true
105
- end
99
+ def stop_all
100
+ run(LEFT_ANALOG_SIGNAL, 0)
101
+ run(RIGHT_ANALOG_SIGNAL, 0)
102
+ arduino.digital_write LEFT_DIGITAL_BACKWARD, false
103
+ arduino.digital_write LEFT_DIGITAL_FORWARD, true
104
+ arduino.digital_write RIGHT_DIGITAL_BACKWARD, false
105
+ arduino.digital_write RIGHT_DIGITAL_FORWARD, true
106
+ end
106
107
 
107
- private
108
- def soft_run(is_continues = false, max_power = 145)
109
- if is_continues
110
- MIN_POWER.upto(max_power).each do |val|
111
- run(LEFT_ANALOG_SIGNAL, val)
112
- run(RIGHT_ANALOG_SIGNAL, val)
113
- sleep 0.01
114
- end
115
- else
116
- MIN_POWER.upto(max_power).each do |val|
117
- run(LEFT_ANALOG_SIGNAL, val)
118
- run(RIGHT_ANALOG_SIGNAL, val)
119
- sleep 0.01
108
+ private
109
+ def soft_run(is_continues = false, max_power = 145)
110
+ if is_continues
111
+ MIN_POWER.upto(max_power).each do |val|
112
+ run(LEFT_ANALOG_SIGNAL, val)
113
+ run(RIGHT_ANALOG_SIGNAL, val)
114
+ sleep 0.01
115
+ end
116
+ else
117
+ MIN_POWER.upto(max_power).each do |val|
118
+ run(LEFT_ANALOG_SIGNAL, val)
119
+ run(RIGHT_ANALOG_SIGNAL, val)
120
+ sleep 0.01
121
+ end
122
+ max_power.downto(MIN_POWER).each do |val|
123
+ run(LEFT_ANALOG_SIGNAL, val)
124
+ run(RIGHT_ANALOG_SIGNAL, val)
125
+ sleep 0.01
126
+ end
127
+ stop_all
120
128
  end
121
- max_power.downto(MIN_POWER).each do |val|
122
- run(LEFT_ANALOG_SIGNAL, val)
123
- run(RIGHT_ANALOG_SIGNAL, val)
124
- sleep 0.01
125
- end
126
- stop_all
127
129
  end
128
- end
129
130
 
130
- def run(depending_pin, power = MIN_POWER)
131
- arduino.analog_write depending_pin, power
132
- end
131
+ def run(depending_pin, power = MIN_POWER)
132
+ arduino.analog_write depending_pin, power
133
+ end
133
134
 
134
- def set_left_forward
135
- arduino.digital_write LEFT_DIGITAL_BACKWARD, false
136
- arduino.digital_write LEFT_DIGITAL_FORWARD, true
137
- end
135
+ def set_left_forward
136
+ arduino.digital_write LEFT_DIGITAL_BACKWARD, false
137
+ arduino.digital_write LEFT_DIGITAL_FORWARD, true
138
+ end
138
139
 
139
- def set_right_forward
140
- arduino.digital_write RIGHT_DIGITAL_BACKWARD, false
141
- arduino.digital_write RIGHT_DIGITAL_FORWARD, true
142
- end
140
+ def set_right_forward
141
+ arduino.digital_write RIGHT_DIGITAL_BACKWARD, false
142
+ arduino.digital_write RIGHT_DIGITAL_FORWARD, true
143
+ end
143
144
 
144
- def set_all_forward
145
- set_left_forward
146
- set_right_forward
147
- end
145
+ def set_all_forward
146
+ set_left_forward
147
+ set_right_forward
148
+ end
148
149
 
149
- def set_left_backward
150
- arduino.digital_write LEFT_DIGITAL_BACKWARD, true
151
- arduino.digital_write LEFT_DIGITAL_FORWARD, false
152
- end
150
+ def set_left_backward
151
+ arduino.digital_write LEFT_DIGITAL_BACKWARD, true
152
+ arduino.digital_write LEFT_DIGITAL_FORWARD, false
153
+ end
153
154
 
154
- def set_right_backward
155
- arduino.digital_write RIGHT_DIGITAL_BACKWARD, true
156
- arduino.digital_write RIGHT_DIGITAL_FORWARD, false
157
- end
155
+ def set_right_backward
156
+ arduino.digital_write RIGHT_DIGITAL_BACKWARD, true
157
+ arduino.digital_write RIGHT_DIGITAL_FORWARD, false
158
+ end
158
159
 
159
- def set_all_backward
160
- set_left_backward
161
- set_right_backward
162
- end
160
+ def set_all_backward
161
+ set_left_backward
162
+ set_right_backward
163
+ end
163
164
 
165
+ end
164
166
  end
@@ -1,39 +1,41 @@
1
- class ArduinoSensors
2
- attr_accessor :arduino, :front_distance, :rear_distance
1
+ module Capoblo
2
+ class ArduinoSensors
3
+ attr_accessor :arduino, :front_distance, :rear_distance
3
4
 
4
- ULTRASONIC_TRIGGER = 11
5
- ULTRASONIC_ECHO = 12
6
- AVOIDANCE_SENSOR_PIN = 2
5
+ ULTRASONIC_TRIGGER = 11
6
+ ULTRASONIC_ECHO = 12
7
+ AVOIDANCE_SENSOR_PIN = 2
7
8
 
8
9
 
9
- def initialize
10
- super
11
- self.arduino = ARDUINO_ONE
10
+ def initialize
11
+ super
12
+ self.arduino = ARDUINO_ONE
12
13
 
13
- self.arduino.pin_mode ULTRASONIC_TRIGGER, ArduinoFirmata::OUTPUT
14
- self.arduino.pin_mode ULTRASONIC_ECHO, ArduinoFirmata::INPUT
15
- self.arduino.pin_mode AVOIDANCE_SENSOR_PIN, ArduinoFirmata::INPUT
16
- end
14
+ self.arduino.pin_mode ULTRASONIC_TRIGGER, ArduinoFirmata::OUTPUT
15
+ self.arduino.pin_mode ULTRASONIC_ECHO, ArduinoFirmata::INPUT
16
+ self.arduino.pin_mode AVOIDANCE_SENSOR_PIN, ArduinoFirmata::INPUT
17
+ end
17
18
 
18
19
 
19
- def front_distance
20
- @front_distance = 0
21
- ## For senfor is reading
20
+ def front_distance
21
+ @front_distance = 0
22
+ ## For senfor is reading
22
23
 
23
- arduino.digital_write ULTRASONIC_TRIGGER, false
24
- sleep 0.005
25
- arduino.digital_write ULTRASONIC_TRIGGER, true
26
- sleep 0.01
27
- arduino.digital_write ULTRASONIC_TRIGGER, false
24
+ arduino.digital_write ULTRASONIC_TRIGGER, false
25
+ sleep 0.005
26
+ arduino.digital_write ULTRASONIC_TRIGGER, true
27
+ sleep 0.01
28
+ arduino.digital_write ULTRASONIC_TRIGGER, false
28
29
 
29
30
 
30
- puts arduino.sysex 0x74, [ULTRASONIC_ECHO, 1]
31
- end
31
+ puts arduino.sysex 0x74, [ULTRASONIC_ECHO, 1]
32
+ end
32
33
 
33
- def rear_distance
34
- @rear_distance = arduino.digital_read 2
35
- @rear_distance
36
- end
34
+ def rear_distance
35
+ @rear_distance = arduino.digital_read 2
36
+ @rear_distance
37
+ end
37
38
 
38
39
 
40
+ end
39
41
  end
@@ -1,29 +1,31 @@
1
- class InterfaceConnection
2
- #simplest ruby program to read from arduino serial,
3
- #using the SerialPort gem
4
- #(http://rubygems.org/gems/serialport)
5
- require "rubygems"
6
- require "arduino_firmata"
7
- require 'rubyserial'
1
+ module Capoblo
2
+ class InterfaceConnection
3
+ #simplest ruby program to read from arduino serial,
4
+ #using the SerialPort gem
5
+ #(http://rubygems.org/gems/serialport)
6
+ require "rubygems"
7
+ require "arduino_firmata"
8
+ require 'rubyserial'
8
9
 
9
- #require "date"
10
+ #require "date"
10
11
 
11
- attr_accessor :port_str, :baud_rate, :data_bits, :stop_bits, :parity
12
- #params for serial port
12
+ attr_accessor :port_str, :baud_rate, :data_bits, :stop_bits, :parity
13
+ #params for serial port
13
14
 
14
- def initialize
15
- super
16
- self.port_str = "/dev/ttyACM0" #may be different for you
17
- self.baud_rate = 9600
18
- self.data_bits = 8
19
- self.stop_bits = 1
20
- self.parity = SerialPort::NONE
21
- end
15
+ def initialize
16
+ super
17
+ self.port_str = "/dev/ttyACM0" #may be different for you
18
+ self.baud_rate = 9600
19
+ self.data_bits = 8
20
+ self.stop_bits = 1
21
+ self.parity = SerialPort::NONE
22
+ end
22
23
 
23
- def self.get_interface
24
- conn = InterfaceConnection.new
25
- arduino = ArduinoFirmata.connect conn.port_str
26
- arduino
27
- end
24
+ def self.get_interface
25
+ conn = InterfaceConnection.new
26
+ arduino = ArduinoFirmata.connect conn.port_str
27
+ arduino
28
+ end
28
29
 
30
+ end
29
31
  end
@@ -1,3 +1,3 @@
1
1
  module Capoblo
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capoblo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Oguzhan ilhan