* Mục đích thí nghiệm
+ Minh họa hình ảnh sóng dọc
* Những hạn chế khi sử dụng thí nghiệm truyền thống
+ Rất khó để ta tạo được sóng dọc và thay đổi bước sóng của sóng dọc, học sinh khó quan sát được một cách rõ ràng.
+ Khó quan sát được các phần tử cấu tạo nên sóng dao động như thế nào * Ưu điểm của thí nghiệm flash
+ Trực quan, dễ sử dụng
+ Dễ dàng quan sát được các phân tử cấu tạo nên lò xo, dao động giống như một chất điểm đang dao động điều hòa quanh vị trí cân bằng
+ Có thể thay đổi tần số, bước sóng rất dễ dàng để quan sát được sóng dọc trên lò xo một cách rõ ràng
+ Các phần tử dao động với cùng một tần số, biên độ, bước sóng để tạo nên hình ảnh sóng dọc
+ Có thể tạm dừng để khảo sát vị trí bất kì của các phần tử
+ Có thể khảo sát lại từ đầu nhiều lần, để thấy được sự lan truyền sóng lên các phần tử của sóng dọc
+ Sau khi hoàn thành, giáo viên có thể đưa thí nghiệm này đến với từng học sinh, để học sinh có thể tự làm thí nghiệm, tự học và tự thực hành, hoặc có thể bổ sung câu hỏi vào thí nghiệm để giao cho học sinh giống như một bài tập về nhà
+ File flash có thể mở một cách dễ dàng bằng các trình duyệt web (Chrome, Filefox, IE…) hoặc cũng có thể kết hợp dễ dàng với Violet hoặc Powerpoint để tạo thành một bài giảng hoàn chỉnh
* Các bước thiết kế thí nghiệm
Bước 1:Tạo các MovieClip (MC) là phần tử uM
Thực hiện chèn mã lệnh vào bên trong MC, tại Frame đầu tiên của MC //ban đầu khi đặt đối tượng tại một vị trí bất kì trên Stage
yvat = _y; //tọa độ y ban đầu của vật xvat = _x;//tọa độ x ban đầu của vật //khi bắt đầu chạy Frame
onEnterFrame = function(){
t = _root.goTime;//hàm thời gian
A = 8;//biên độ dao động của chất điểm
T = 100/(_root.tanso._x - 250); //chu kì dao động của chất điểm lamda = (_root.buocsong._x - 400)*10;//bước sóng
phi = 2*Math.PI*(t/T - xvat/lamda);//pha dao động của chất điểm
if( phi > 0){ _x = xvat + A*Math.sin(phi);// tọa độ x theo thời gian của chất điểm, hay chính là phương trình dao động của chất điểm theo phương x }else{ _x = xvat;}}
Lưu ý: ta chỉ cần tạo một phần tử uM, sau đó copy hoặc kéo trực tiếp từ Libraly vào Stage, sau đó xếp thành hình lò xo
Bước 2: Tạo nút có chức năng điều khiển, nút tăng giảm tần số, bước sóng và
các thành phần cần có khác
+ Đặt tên cho nút play trong mục <Instace Name> là unpausebutton + Đặt tên cho nút pause trong mục <Instace Name> là pausebutton + Đặt tên cho nút stop trong mục <Instace Name> là batdaulai
+ Đặt tên cho các nút kéo là tanso, buocsong trong mục <Instace Name> của từng nút kéo tương ứng
Kết quả (hình 20)
Bước 3: Thực hiện chèn mã lệnh vào Frame đầu tiên
Tại Frame đầu tiên
goTime = 0;//biến thời gian goTime ban đầu bằng không // khai báo đối tượng batdau()
function batdau() { goTime = 0; //biến thời gian trở về bằng không tamdung();}//bắt đầu đầu đối tượng tamdung()
//khai báo đối tượng tamdung()
function tamdung() { timing = false;}//biến này với mục đích tạm dừng thời gian // khai báo đối tượng chay()
function chay() { timing = true;}//thời gian tiếp tục chạy //khi bắt đầu chạy Frame
onEnterFrame = function() { //nếu biến timing = true
if (timing) {goTime = goTime + 0.1;}}//biến thời gian goTime tăng với hệ số 0.1 unpausebutton.onPress=function() { chay();}//khi bấm nút play thì thực hiện đối tượng chay ()
pausebutton.onPress=function() { tamdung();} //khi bấm nút pause thì thực hiện đối tượng tamdung()
batdaulai.onPress= function() { batdau();}//khi bấm nút stop thì thực hiện đối tượng batdau()
Kết quả: nhấn Ctrl + Enter (hình 21)