Merge pull request #12 from PTroester/hydro-devel

Added code to use the pwm output, hydro-devel
This commit is contained in:
pirobot 2014-04-30 06:25:39 -07:00
commit d201fddf48
3 changed files with 13 additions and 2 deletions

View File

@ -15,6 +15,7 @@ add_service_files(FILES
DigitalWrite.srv DigitalWrite.srv
ServoRead.srv ServoRead.srv
ServoWrite.srv ServoWrite.srv
AnalogWrite.srv
) )
generate_messages( generate_messages(

View File

@ -0,0 +1,3 @@
uint8 pin
float32 value
---

View File

@ -77,6 +77,9 @@ class ArduinoROS():
# A service to turn a digital sensor on or off # A service to turn a digital sensor on or off
rospy.Service('~digital_write', DigitalWrite, self.DigitalWriteHandler) rospy.Service('~digital_write', DigitalWrite, self.DigitalWriteHandler)
# A service to set pwm values for the pins
rospy.Service('~analog_write', AnalogWrite, self.AnalogWriteHandler)
# Initialize the controlller # Initialize the controlller
self.controller = Arduino(self.port, self.baud, self.timeout) self.controller = Arduino(self.port, self.baud, self.timeout)
@ -174,6 +177,10 @@ class ArduinoROS():
self.controller.digital_write(req.pin, req.value) self.controller.digital_write(req.pin, req.value)
return DigitalWriteResponse() return DigitalWriteResponse()
def AnalogWriteHandler(self, req):
self.controller.analog_write(req.pin, req.value)
return AnalogWriteResponse()
def shutdown(self): def shutdown(self):
# Stop the robot # Stop the robot
try: try: