Tag: arduino

HTTP请求从arduino更新rails模型

我有一个名为“桶”的铁轨模型,其属性为“加仑”。 我想从arduino(Boarduino v2.0)和Adafruit CC3000 WiFi模块更新某些桶的“加仑”属性。 我的rails应用程序位于我的计算机上的端口3000。 本地主机:3000 /桶 我做了一个桶脚手架,所以它有一个带有更新方法的控制器: # PUT /barrels/1 # PUT /barrels/1.json def update @barrel = Barrel.find(params[:id]) respond_to do |format| if @barrel.update_attributes(params[:barrel]) format.html { redirect_to @barrel, notice: ‘Barrel was successfully updated.’ } format.json { head :no_content } else format.html { render action: “edit” } format.json { render json: @barrel.errors, status: :unprocessable_entity } […]

从Ruby on Rails应用程序中的串行端口读取挂起

我正在使用serialport gem从我的Ruby on Rails 3.2应用程序中的串口读取。 串行端口本身用于从Arduino板写入数据。 gem被添加到Gemfile 。 端口在application.rb初始化: config.serial_port = SerialPort.new “/devttyACM0”, 9600 config.serial_port.read_timeout = 100 当我尝试从此端口读取时出现问题。 @sp = ProjectName::Application::config.serial_port @sp.read 该应用程序挂起致命。 我试图从pry会话中进行阅读,一切都很好。 如果我将read_timeout设置为0 ,则从pry读取也会挂起。 我已经尝试将read_timeout设置为更大的值而没有结果。 我该怎么做才能让它发挥作用? 更新: 我试图使用sinatra 框架执行相同的操作。 它也挂了。 require “sinatra” require “serialport” get ‘/’ do read_data end helpers do def read_data sp = SerialPort.new “/dev/ttyACM0”, 9600 sp.read_timeout = 1500 t = […]