Sha256: a353dc0167106d23ca589e9d22d7e59566ac716686db9c7e3e3afe91f26a6f4f

Contents?: true

Size: 1012 Bytes

Versions: 8

Compression:

Stored size: 1012 Bytes

Contents

require 'sequel'

File.unlink('gen.sq3') if File.readable?('gen.sq3')
db = Sequel.connect 'sqlite://gen.sq3'

db.create_table '_senders'.to_sym do
  Integer :id
  String :name
end
db['_senders'.to_sym].insert(id: 1, name: 'test')

db.create_table :voltage do
  Integer :oml_sender_id
  Integer :oml_seq
  Float :oml_ts_client
  Float :oml_ts_server
  String :generator
  Float :voltage
  Float :noise
end
$out_t = db[:voltage]
$seq = 0


$start = Time.now.to_i
def measure(gen, voltage, noise)
  now = Time.now.to_f - $start
  r = {
    oml_sender_id: 1, oml_seq: $seq,
    oml_ts_client: now, oml_ts_server: now,
    generator: gen,
    voltage: voltage,
    noise: noise
  }
  $out_t.insert(r)
  $seq += 1
end

def r; rand - 0.5; end
def noise(mul); return 4 * mul * r() * r(); end

ang = 0;
step = Math::PI * 15 / 180;
loop do
  n1 = noise(0.02);
  a1 = Math.sin(ang);
  measure('gen1', a1 + n1, n1);
  n2 = noise(0.01);
  a2 = Math.cos(ang);
  measure('gen2', a2 + n2, n2);
  ang += step;

  sleep 0.2
end


Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
omf_web-1.2.9 doc/tutorial/tut04/create_db.rb
omf_web-1.2.8 doc/tutorial/tut04/create_db.rb
omf_web-1.2.7 doc/tutorial/tut04/create_db.rb
omf_web-1.2.6 doc/tutorial/tut04/create_db.rb
omf_web-1.2.5 doc/tutorial/tut04/create_db.rb
omf_web-1.2.4 doc/tutorial/tut04/create_db.rb
omf_web-1.2.3 doc/tutorial/tut04/create_db.rb
omf_web-1.2.2 doc/tutorial/tut04/create_db.rb