Sha256: ae24b02b4f149e12fd114b3a95b0018b9aab40c08b68e5ba2d4f59b24234d618

Contents?: true

Size: 1.2 KB

Versions: 1

Compression:

Stored size: 1.2 KB

Contents

#!/usr/bin/env ruby

require 'green_eye_monitor/client'
require 'smart_energy_group/client'
require 'awesome_print'
require 'yaml'

seg_config = YAML.load_file('/etc/green_eye_monitor_collector/seg.yaml')
seg_config[:channels] ||= {}

gem = GreenEyeMonitor::Client.new(:serial_port => '/dev/ttyUSB1', :debug => false)

seg = SmartEnergyGroup::Client.new(seg_config[:site_id])

puts "Gem Serial: #{gem.serial}"
puts

gem.packet_format = :bin32_net

old_data = gem.send_one_packet
sleep(10)

loop do
  data = gem.send_one_packet(old_data)

  options = {
    :temperature => data.temperature,
    :power       => data.abs_watts,
    :amps        => data.current,
    :voltage     => [data.voltage]
  }

  seg_config[:channels].each do |type, channels|
    options[type] = Hash[channels.map { |i| [i, options[type][i - 1]] }]
  end

  seg.send_data('gem', options)

  puts
  puts '-------------------------'
  puts
  puts "Time: #{Time.now}"
  puts
  puts 'Realtime:'
  puts "  Voltage: #{options[:voltage].first}"
  puts "  Temp: #{options[:temperature].values.join(', ')}"
  puts "  Power: #{options[:power].values.join(', ')}"
  puts "  Current: #{options[:amps].values.join(', ')}"
  puts

  old_data = data

  sleep(60)
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
green_eye_monitor_collector-0.1.0 exe/green_eye_monitor_collector