Labels

Sunday, May 3, 2020

Crystal Report Cross Tab Sorting

In Specified Order (Crystal Report Cross tab)


In this tip , you will learn cross tab Group sorting option called "In Specified Order"


Introduction 


Using this option you can sort cross tab grouping rows and column. Specially ,In Specified Order option help you to sort detail that can't sort regular way. Let's take one of real world scenario like this, when we want to create cross tab sorting month name wise. Let's see how to do it.


1. Right click on the Cross Tab on Crystal Report , Click Cross Tab Expert.
Select Cross-Tab Exprert


2. There are buttons (Group Option) bellow column and row of cross tab , Select Column or Row            field need to add Special order   and click Group Option Button.
Group Option


3.  Select Common tab and Select In Specified Order from drop down.
In specified order.


4.  Then select Specified Order tab and click new button to add order. Then enter Group Name and  select the condition and enter value in front of it. Here I entered January as group name and  select "is equal to " condition and January as a value , Likewise you need to add all months in year according to your scenario.
User define order

Wednesday, April 29, 2020

PIR Motion Sensor

PIR Motion Sensor ( DYP-ME001)


PIR Sensor

Introduction to PIR motion Sensor

PIR sensor can detect motion. Almost always PIR sensor used to detect human motion in or out of the sensor range. They are inexpensive, low powered  and small sensor. Usually this call as PIR (Passive Infrared) ," Pyroelectric","IR motion" sensors. PIR sensor capture IR radiation. There are meany type of PIR sensor module (HC-SR501 , DYP-ME001), So here I going to explain about DYP-ME001 sensor module with Arduino (PIR sensor can also work without microchip).

DYP-ME001


Specification Of  DYP-ME001

Input Voltage - DC 4.5 - 20V
Static Current - 500uA
Block Time - 2.5s
Delay Time - 5s
Sentry Angle < 110
Sentry Range -3m to 7m

How PIR Sensor Works

PIR Sensor itself has two slot. These slots are sensitive to Infrared. When heat source (human or animal) passing sensitive area, PIR sensor intercepts one half of sensor.So, it cause positive differential change between two slot. As well as , after leave warm body from sense area , the reverse happen. In this time PIR sensor generate negative differential change. So these changes are detected by PIR sensor.


PIR Setting

Trigger Mode Jumper

In this DYP-ME001 sensor we can't change Jumper setting. So It connect with H position by default.
But if we consider  HC-SR501 PIR sensor, we can change jumper setting also.

L position

when moving warm body in front of sensor , sensor start to turn on and off every second or so
(ex LED on and off continuously ). So we call this as non-retriggering or single trigger mode.

H position

Sensor will turn on entire time that something is moving. So we call this as retriggering or repeatable trigger mode.

Sensitivity and Time Adjustment

Sensitivity

According to PIR motion sensor (DYP-ME001) specification adjustable range is from 3m to 7m. Here is way adjust.

Clockwise or Right side -- decrease sensitivity, so it fully right and range will be approximately 3m.

Counter Clockwise or Left side --increase sensitivity , so it fully right and range will be   approximately 7m.

Time Adjustment

This adjustment  determined how long of  PIR sensor will remain high after motion detected.

Clockwise or Right side -- Increase  delay,So it fully right and delay will be approximately 5 second.

Counter Clockwise or Left side -- decrease delay , So it fully left and delay will be approximately 3 second


Code Sample 

int motion_in =2;
int led_out=3; 

void setup() {
pinMode(motion_in ,INPUT);
pinMode(led_out,OUTPUT);    }

void loop() {
  // put your main code here, to run repeatedly:
 
int pir_read = digitalRead(motion_in);
if(pir_read==1)

  digitalWrite(led_out ,HIGH);
  delay(1000);
}
else
{
    digitalWrite(led_out,LOW);
    delay(300);
}}




Wednesday, July 26, 2017

Livit Fitness Band

  



I bought Dialog LIVIT Fitness Band couple of week ago. So, I would like to share my experience it. LIVIT is low price fitness band. So I bought this fitness band for 1745 LKR (Discounted Price). I think it good for that price. However, LIVIT doesn't have heartbeat sensor.

 Features

  1. All day activity tracking (steps,distance,calories burned,active minits,hourly activity).
  2. Notification and calender alerts - (Call,text,facebook,Twitter,WhatApps,skype,Gmail).
  3. Reminder to move (encorage you to take steps every hour).
  4. Auto Sleep Traking (how long well you sleep).
  5. Sync Wirless (Bluetooth 4.0 with Android and Apple devices).
  6. USB Charge.
  7. Easy Touch and Gesture Control (High sensitivity  touch screen).

Support

 IOS : 4S/ 5/ 5S/ 5C/ IPad 3 IOS 8.0 above.
 Android : Android 4.4 above

Friday, July 21, 2017

SQL Server Database Mail Configuration

SQL Server Mail Configuration


I'm going explain, how to config SQL Server Mail Service step by step

Step 01

Log in to SQL Server , Extract Management and Right click on Database Mail. Then select Configure Database Mail.



Step 02

Following window will appear , Then click Next button

 

Step 03

Select  Set Up Database Mail by performing the Tasks and Click Next.



Step 04

 If this feature disable , wizard will ask to enable it. So Enable it. Then below window will appear.
Enter Profile and Description and click ADD button on Right side.



Step 05

 Here we have enter more detail. First enter Account Name and Description. Then enter SMTP mail server configurations .
  1.  email address
  2. Display Name (optional)
  3.  Reply email (optional)
  4.  SMTP Server
  5.  Port Number ex- (25 ,457 ,587) 

Select Basic Authentication under the SMTP Authentication. Then enter mail sending email account's Username and Password and click Add .



Step 06

 Then window will appear. it shows your created profile and click Next.

Step 07

 Then another window will , the Configure System Parameters description is shown.


Step 08

Then Click Next. It will show confirmation about your profile , so click Finish.



Step 09

Now SQL server was configured email service and click close .

Step 10
Run following SQL Query

sp_CONFIGURE 'show advanced', 1
GO
RECONFIGURE
GO
sp_CONFIGURE 'Database Mail XPs', 1
GO
RECONFIGURE
GO

How to test SQL Sever mail

Then again right click on Database Mail and select Send Test Email. Then select Database mail profile and enter receiver mail address ,  mail subject.



How to view Database Mail Log

Right click on the Database mail and select View Database Mail Log
 
  

Wednesday, June 14, 2017

SQL Server - T-SQL Query to find Monday of current week

T-SQL Query to find Monday of current week


We can write simple SQL query to get Monday of current week.

SELECT DATEADD(WK, DATEDIFF(WK,0,GETDATE()), 0)
SELECT DATEADD(WEEK, DATEDIFF(WEEK,0,GETDATE()), 0)


Above two query will return date of Monday in current week ex -2017-06-12 . So if you want to get other days like Tuesday, Wednesdays etc of current week, you can simply change int value in function.

 SELECT DATEADD(WK, DATEDIFF(WK,1,GETDATE()), 1)  -- Tuesday
 SELECT DATEADD(WK, DATEDIFF(WK,2,GETDATE()), 2)  --- Wednesday

Thursday, May 4, 2017

How to program HC-SR04 Ultrasonic sensor with Arduino

HC-SR04 Ultrasonic Sensor




The HC-SR04 sensor use ultrasonic sound to determine distance to object. We can measure from 2cm to 400cm  using HC-SR04 sensor. It operation is not affected by sunlight and black surface , but temperature and humidity can be affected to accuracy of reading. It also hard to detect soft material ex - cloth. HC-SR04 sensor has ultrasonic receiver and transmitter.Here, my goal is to help you to understand how this sensor works and program with arduino .

NOTE :- NewPing is a arduino library, that makes easier to use HC-SR04 with arduino.

HC-SR04 Ultrasonic sensor Technical Specification

HC-SR04

power supply                  :- 5DC
Quiescent Current           :- 2mA
Working Current               :-15mA
Effect Angle                    :<15 degrees
Distance                           :- 2cm to 400cm
Resolution                        :-0.3cm
Trigger input pulse width :-10us
Ultrasonic Frequency       :-40KHz

Pins


VCC  :- arduino 5v pin
TRIG  :- arduino Digital pin
ECHO :- arduino Digital pin
GND  :- arduino GND pin

TRIG pin will be used to send ultrasonic sound and ECHO pin will be used to listen.


Example

int triggerPin= 8;
int echoPin= 7;
long pulsDuration =0;
long distanceCM =0;
long distanceINC =0;
void setup() {
  // put your setup code here, to run once:
  pinMode(triggerPin,OUTPUT);
  pinMode(echoPin,INPUT);

  Serial.begin(9600);
}

void loop() {
  // put your main code here, to run repeatedly:
   digitalWrite(triggerPin,LOW);
   delayMicroseconds(5);
   digitalWrite(triggerPin,HIGH);
   delayMicroseconds(10);
   digitalWrite(triggerPin,LOW);

  pulsDuration =pulseIn(echoPin,HIGH);

  distanceCM = (pulsDuration/2) / 29.1;
  distanceINC = (pulsDuration/2) / 74; 

   Serial.println("CM");
  Serial.println(distanceCM);

   Serial.println("INCH");
  Serial.println(distanceINC);

  delay(1000);

   Serial.println("**********************************************");
}








Thursday, April 20, 2017

How do i program IR Sensor - Arduino

FC-51 IR Sensor Module


FC-51 IR sensor module is a proximity sensor module. We can identify obstacle in front of sensor. So it has built in IR transmitter and IR receiver. It also has built in potentiometer to adjust distance rage. IR sensor module operate in 2cm-30cm range. FC-51 is compatible with Arduino.


Technical Specification 

1. Operation Voltage - 3.3V - 5V
2. Detection Angle   -35 degrees
3 Active Output level - Outputs Low logic level when obstacle is detected
4.Detection range: 2cm – 30cm (Adjustable using potentiometer)

PIN Out & In

1. VCC - 3.3V-5V DC power input
2. GND -0V Power pin
3. OUT -  Digital Output Pin


Programming 

There are may way to do it. So here i try to use IR sensor with Arduino Uno board. When obstacle is detected by sensor, it will generate LOW output, otherwise output is HIGH.


Example 1 

int irSenRead =7;
int isObstacle = HIGH;
void setup() {

  pinMode(irSenRead ,INPUT);
   Serial.begin(9600);

}

void loop() {

  isObstacle = digitalRead(irSenRead); // // Read IR sensor output
   Serial.println(digitalRead(irSenRead)); // // print the output

  // // isObstacle ==low there is obstacle infront of sensor
  // // using serial monitor we can see this output
  if (isObstacle == LOW) {
    Serial.println("OBSTACLE");
  }
  else
  {
    Serial.println("NO");
  }

  delay(500);
}

Example 2
In below code sample .LED bulb will be on when obstacle detected

int irSenRead =7;
int LED=6;
int isObstacle = HIGH;
int delayRead =100;
void setup() {

  pinMode(irSenRead ,INPUT);
   pinMode(LED ,OUTPUT);
   Serial.begin(9600);

}

void loop() {

  isObstacle = digitalRead(irSenRead);
   Serial.println(digitalRead(irSenRead));

   // isObstacle ==low there is obstacle infront of sensor
  if (isObstacle == LOW) {
    digitalWrite(LED ,HIGH);
  }
  else
  {
    digitalWrite(LED ,LOW);
  }

  delay(delayRead);
}