phpRPC + Ruby + Arduino = Ô¶³Ì¿ØÖÆ
phpRPC + Ruby + Arduino = 遠³Ì¿ØÖÆLED開關(?)
àÅ£¬ÎÒÖªµÀ這ÊÇ個ºÜ無ÁĵÄSample :P
關ì¶phpRPC與Arduino請×ÔÐÐGoogle
觀¿´´Ëdemo֮ǰ請ÏÈ°²裝ÁíÍâһƪËùÌáµ½µÄserialport
與ÁíÍâÒ»個Gem
Ì×¼þ£ºphprpc
ÔÚ這個範ÀýÖУ¬ÎÒ͸過PHPRPC½¨Á¢Ò»個Server£¬並ÇÒ͸過RPCºô½ÐһЩmethodÈ¥¿ØÖÆUSB Serial Port
¶øÔÚ實現這個demo時£¬ÎÒ們±Ø須½¨Á¢Server&Client兩¶Ë
µ×ÏÂÊÇSource code:
複製內Èݵ½¼ô貼°å
´ú碼:
# Server
#!/usr/bin/env ruby
require 'rubygems'
require 'serialport'
require 'phprpc'
class Cloud
def initialize
@@sp ||= SerialPort.new("/dev/cu.usb
serial-A600bMiv", {:baudrate => 9600})
end
def write(color)
@@sp.write("##{color}")
end
def close
@@sp.close
end
end
def randomColor
r = rand(256).to_s(16)
g = rand(256).to_s(16)
b = rand(256).to_s(16)
r = "0" + r if r.size == 1
g = "0" + g if g.size == 1
b = "0" + b if b.size == 1
color = r+b+g
cloud = Cloud.new
cloud.write(color)
"Color #{color} has been set."
end
def setColor(color)
cloud = Cloud.new
cloud.write(color)
"Color #{color} has been set."
end
def setRGBColor(r,g,b)
cloud = Cloud.new
cloud.write((r+g+b).to_s)
"Color #{(r+g+b)} has been set."
end
methods = %w"randomColor setColor setRGBColor"
server = PHPRPC::Server.new
server.debug = true
server.add(methods)
server.start
at_exit{
cloud.c
Ïà¹ØÎĵµ£º
class Tree
def initialize
puts "Make a normal tree"
end
def decorate
puts "Make sure the tree won\'t fall"
end
end
class RedBalls < Tree
def initialize(tree)
@parent = tree;
end
def decorate
@parent.decorate
puts "Put on some red balls"
end
end
......
ÔÚÂÛ̳Àï¿´ÁËdaquan198163ËùдµÄ¡¶³õѧRORµÄÒÉ»ó¡·ÕâƪÎÄÕ£¬robbinÔڻظ´ÖиøÁËÏêϸµÄ½â´ð£¬¿ÉÊÇ¿´Íê½â´ðÖ®ºó£¬ÎÒÒ²²úÉúÁËһЩÒÉ»ó£¬ÔÚ´ËÏëÎÊÎÊ¡£
ÔÚrobbinËù¸ø³öµÄ½â´ðµ±ÖУ¬¸ü¶àµÄÊDzûÊörailsµÄºÃ´¦£¬È»¶ø´ó¼Ò¶¼ÖªµÀ£¬railsÖ»Ê ......
´ÓÃüÁîÐÐÆô¶¯Ruby½âÊÍÆ÷ʱ£¬Äã²»½ö¿ÉÒÔÌṩ³ÌÐòÎļþµÄÃû×Ö£¬¶øÇÒ¿ÉÒÔÌṩһ¸ö»ò¶à¸öÃüÁîÐпª¹Ø¡£ÄãÑ¡ÔñµÄ¿ª¹Øָʾ½âÊÍÆ÷ÒÔÒ»ÖÖÌض¨µÄ·½Ê½ÔËת£¬²¢ÇÒ/»òÕßÖ´ÐÐÌض¨µÄ²Ù×÷¡£
RubyÃüÁîÐпª¹ØÓÐ20¶à¸ö£¬ÆäÖÐÓÐЩºÜÉÙʹÓã¬ÓÐЩÔòÿÌì±»ºÜ¶àRuby³ÌÐòԱʹÓá£ÔÚÕâÀïÎÒÃǽ«ÔÙ¿´¼¸¸ö×î³£Óõġ££¨ÄãÒѾ¿´µ½¹ýÆäÖеÄÁ½¸ö£¬-cºÍ&ndas ......
²Ù×÷ϵͳubuntu£¬¿ª·¢¹¤¾ßnetbeans
vendorÊý¾Ý¿â±íÓÐ×Ö¶Îservice_category varchar(100)
<% form_for :vendor, @vendor, :url => sellers_path do |f| %>
<%= f.select(:service_category,
  ......