53ningen.com

@gomi_ningen's Website

C#から2次元データファイルをGNUPLOTでプロットさせる

測定プログラム共通で使いまわせるよう C#上から GNUPLOT コンソールへコマンドを送り、データをグラフ出力させる機能を持った GnuplotGraph クラスを書いてみた。ある測定システムを組んでる際、何も考えずに組んだら鬼のようなスパゲッティーコードになってしまったので、少しでも改善できるようなるべく GNUPLOT 関連以外の事柄と切り離して書きなおしたものです。結構長いので先に利用側のコードを...。

GnuplotGraph 利用側のコード C#

using Gnuplot;
using System.Collections.Generic;
using System.Linq;
using NUnit.Framework;

namespace GnuplotUsing
{
    [TestFixture]
    class GnuplotGraphTest
    {
        [Test]
        public void GnuplotGraphDrawTest()
        {
            var...
Read More

VISA COMを利用した測定システム構築について

1.VISA COM を利用した測定システム構築について

実験機器を制御するために用いられる通信規格とそれを用いたシステムの構築について必要な知識をコンパクトにまとめました。

2.GPIB 通信の基礎知識

2.1.GPIB とは

GPIB(General Purpose Interface Bus) は短距離デジタル通信の経路(バス)として設計されました。もともとは米 Hewlett Packard 社の HP-IB が IEEE に承認されたものです。IEEE 488 とも呼ばれています。要はデバイス間の通信の際のコネクタの形状などを取り決める物理層のインターフェースのひとつだということです。この物理層にある他のインターフェースには今日広く使われている LAN や USB、RS-232C などがあります。GPIB は測定器の通信規格として最も普及しているため、測定システムを構築する際はほぼ間違いなく取り扱うことになると思います。

2.2.測定機器の接続規約

GPIB を使って機器同士を接続する際には (1) ループ接続をしない、(2) 接続...

Read More

テスト駆動開発をやってみる会に参加してきた

先日、TDD(テスト駆動開発)をやってみる会に参加してきました。

JUnit の存在は知っていたんだけど、どういう風にテストコードを書いていけばいいのかよくわかってなかったので、手っ取り早く知ってる人がいるイベントに参加してしまおうというモチベーションで参加。最近はもっぱら C#での開発ばかりなので C#で参加しました。ちなみに20人ちょい参加者がいた気がしますが C#使いが自分を含めて二人でした。

PHP,Java 使いが多く、Python,Objective-C などもチラホラ。そもそも PHP でテスト環境があることを知らなかった(そんな自分も実は C#を使い始めてからまだ2ヶ月と少し)。研究室のレガシーシステムの書き換えでハードウェア制御の関係で VB か C#(orC++)を選ぶことになり、なんとなく Java に構文が似てそうな C#を選んでせかせか書いてます。

☆ まずはテスト駆動開発についての解説がありました。

1.(失敗する)テストを書く(RED) 2.テストが成功するような実装を書く(GREEN) 3.リファクタリングする(REFACTOR)

という流れで...

Read More

Copyright © 53ningen.com