目次

ニュース

日記カテゴリ

書庫

2008年2月4日

半年くらい前のエントリ:http://blogs.wankuma.com/nagase/archive/2007/08/31/92916.aspx#120872

ですが、

>この回路図を基に0-10V入力に対して4-20mA出力になるような回路にするにはどうしたら宜しいでしょうか?

ということで、返信をテキストで記述しようとしたが、それを書くには余白が狭すぎるので新しく起こしました。

 

前段の加算回路で、2.5Vのオフセットをつけて、0Vから10Vを2.5Vから12.5Vに変換してます。

これを、1V=1.6mAの演算式で、R11をセットします。これで、(計算上は)出力に、4mA - 20mAを流せます。

ただし、上の回路はそもそもuAオーダーの出力を出すためものなので、オペアンプが飽和します。通常利用の場合は、電圧検出抵抗で検出した電流を電圧に変換して、増幅器の反対側に入れるのをオススメしておきます。

posted @ 18:29 | Feedback (3)
C#の練習用にDelegateを利用したFizzBuzz問題をやってみた。
なんかメソッドがことごとくstaticになってるんで、見た目はあまりよくはないですが…。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DelegateFizzBuzz
{
    class Program
    {
        public static int[] FizzBuzzMap = 
           {3,  0,  0,  1,  0,  2,  1,  0,  0,  1,  2,  0,  1,  0,  0 };

        protected delegate void doFuzzBuzz(int n);

        public static void Other(int n)
        {
            Console.WriteLine(n);
        }

        public static void Fuzz(int n)
        {
            Console.WriteLine("Fuzz");
        }

        public static void Buzz(int n)
        {
            Console.WriteLine("Buzz");
        }

        public static void FuzzBuzz(int n)
        {
            Console.WriteLine("FuzzBuzz");
        }
        

        static void Main(string[] args)
        {
            doFuzzBuzz[] FizzBuzzFunc = 
            {
                new doFuzzBuzz( Other ),
                new doFuzzBuzz( Fuzz ),
                new doFuzzBuzz( Buzz ),
                new doFuzzBuzz( FuzzBuzz )
            };

            for (int i = 0; i < 100; i++)
            {
                FizzBuzzFunc[FizzBuzzMap[i % 15]](i);
            }
        }
    }
}
posted @ 13:57 | Feedback (0)

Blog 利用状況

コミュニティ

プロファイル