BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC TÂY BẮC
ĐỖ CÔNG HÀ
ỨNG DỤNG ADOBE FLASH CS5 THIẾT KẾ MỘT
SỐ THÍ NGHIỆM MÔ PHỎNG TRONG TRÌNH
VẬT LÝ LỚP 12
Chuyên ngành: TN 1
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
Người hướng dẫn: ThS. Nguyễn Thanh Lâm
Sơn La - năm 2014
LỜI CẢM ƠN
Khoá luận này được hoàn thành dưới sự giúp đỡ nhiệt tình của thầy giáo
Nguyễn Thanh Lâm – giảng viên môn Vật lý, trường Đại học Tây Bắc. Qua đây
em xin gửi lời cảm ơn chân thành tới thầy đã luôn quan tâm, giúp đỡ trong suốt
quá trình thực hiện khoá luận này.
Em cũng xin gửi lời cảm ơn tới các thầy cô giáo trong Bộ môn Vật lý, Tin
học – Trường Đại học Tây Bắc, Ban chủ nhiệm Khoa Toán – Lý – Tin, Phòng
Khoa học công nghê ̣ và Hợp tác Quốc tế , Trung tâm thông tin - Thư viện trường
Đại Học Tây Bắc đã tạo điều kiện giúp đỡ tôi trong suốt quá trình thực hiện
khoá luận.
Đồng thời, em cũng xin gửi lời cảm ơn chân thành tới các bạn sinh viên
trong tập thể lớp K51 – ĐHSP Vật lý đã luôn động viên, đóng góp ý kiến, giúp
đỡ em thực hiện và hoàn thành khoá luận.
Em rất mong nhận được sự đóng góp ý kiến của các thầy cô giáo và các bạn
sinh viên để khoá luận được hoàn thiện tốt hơn.
Xin chân thành cảm ơn!
Sơn la, tháng 4 năm 2014.
Tác giả : Đỗ Công Hà
NHỮNG KÍ HIỆU VIẾT TẮT TRONG KHÓA LUẬN
STT
VIẾT LÀ
ĐỌC LÀ
1
AS
ActionScript MovieClip
2
CĐ
Chuyển động
3
MC
MovieClip
4
IE
Internet Explore
5
vtcb
Vị trí cân bằng
MỤC LỤC
PHẦN I. MỞ ĐẦU .............................................................................................. 1
1. Lý do chọn đề tài ............................................................................................... 1
2. Mục đích nghiên cứu ......................................................................................... 2
3. Đối tượng nghiên cứu........................................................................................ 2
4. Nhiệm vụ nghiên cứu ........................................................................................ 2
5. Phương pháp nghiên cứu ................................................................................... 2
6. Cấu trúc khoá luận............................................................................................. 2
7. Kế hoạch thực hiện ............................................................................................ 2
PHẦN II. NỘI DUNG ......................................................................................... 3
Chương I. Tìm hiểu phần mềm Adobe Flash CS5 ........................................... 3
1. Khởi động phần mềm .................................................................................... 3
2. Giao diện chương trình và các panel ............................................................. 4
3. ActionScript trong Flash ................................................................................ 5
4. Tạo chuyển động bằng cách viết mã lệnh...................................................... 7
Chương II. Ứng dụng Adobe Flash CS5 thiết kế một số thí nghiệm mô
phỏng trong chương trình vật lý 12 ................................................................. 11
1. Thí nghiệm về con lắc lò xo ........................................................................ 11
2. Thí nghiệm về con lắc đơn .......................................................................... 15
3. Con lắc dao đô ̣ng với hai nửa chu kì khác nhau (con lắ c vướng đinh) ....... 20
4. Con lắc vật lý ............................................................................................... 27
5. Dao động tắt dần .......................................................................................... 29
6. Thí nghiệm minh họa mối liên hệ giữa dao động điều hòa và chuyển động
tròn đều ............................................................................................................ 32
7. Thí nghiệm minh họa sóng dọc ................................................................... 34
8. Thí nghiệm minh họa sóng ngang ............................................................... 37
9. Thí nghiệm so sánh sóng dọc và sóng ngang .............................................. 40
10. Thí nghiệm mô phỏng máy phát điện xoay chiều một pha, ba pha ........... 43
11. Thí nghiệm về lăng kính ............................................................................ 48
PHẦN III: KẾT LUẬN VÀ KIẾN NGHỊ ....................................................... 51
1. KẾT LUẬN ..................................................................................................... 52
2. KIẾN NGHỊ .................................................................................................... 53
TÀI LIỆU THAM KHẢO ................................................................................ 54
PHẦN I. MỞ ĐẦU
1. Lý do chọn đề tài
Ngày nay công nghệ thông tin đã và đang trở thành một phương tiện trợ giúp
đắc lực cho giáo viên, học sinh trong quá trình dạy và học. Kèm theo đó là việc
mô phỏng lại các thí nghiệm vật lý, hiện tượng vật lý nhằm giúp học sinh hình
dung được một cách dễ dàng nhất về các hiện tượng vật lý từ đó có thể giải
quyết được những khó khăn gặp phải trong việc truyền đạt và lĩnh hội kiến thức,
mà nguyên nhân là học sinh không thể hình dung được hiện tượng.
Hiện nay có rất nhiều phần mềm có thể làm được điều đó song phần lớn các
phần mềm mô phỏng hiện nay đều xuất phát từ nước ngoài nên nhiều phần
không sát với chương trình của chúng ta và không phải hiện tượng vật lý nào
cũng có, hơn nữa để thể hiện được đúng ý đồ của người dạy lại càng khó. Để
khắc phục những nhược điểm đó tôi đã tìm hiểu phần mềm Adobe Flash, là một
phần mềm rất phù hợp cho việc mô phỏng các hiện tượng vật lý.
Adobe Flash là phần mềm vẽ hình cho phép tạo hình ảnh động, có các hiệu ứng
chuyển động và biến đổi, lập trình để tạo ra các hoạt động mô phỏng và tương tác
một cách sinh động, hấp dẫn. Flash là công cụ mạnh nhất có thể tạo ra hoạt hình lẫn
mô phỏng. Người học có thể tương tác với các đối tượng trong các file flash mô
phỏng và tạo ra các hoạt hình (animation) trong khi thiết kế các thí nghiệm. File
flash 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. Và với sự hỗ trợ để mở file flash của hầu hết các trình duyệt web hiện
nay (Chrome, Firefox, Internet Explore…) học sinh có thể tự làm, tự thực hành, tự
hoàn thành các yêu cầu của người thiết kế thiết kế thí nghiệm ảo bằng việc tương
tác trực tiếp trên các đối tượng trong file flash mô phỏng. Với phần mềm Adobe
Flash, chúng ta có thể thiết kế các quá trình, cơ chế, thí nghiệm... hoặc tất cả những
yếu tố có tính động để dạy vật lý cho học sinh.
Adobe Flash có rất nhiều phiên bản, phiên bản sau là phiên bản nâng cấp của
phiên bản trước và có thêm nhiều cải tiến. Luận văn của tôi sử dụng phiên bản
CS5 là phiên bản xuất xưởng năm 2010 của Adobe Flash. Và với việc lựa chọn
khóa luận “Ứng dụng Adobe Flash CS5 thiết kế một số thí nghiệm mô phỏng
trong chương trình vật lý lớp 12” làm đối tượng nghiên cứu. Tôi mong muốn
1
học hỏi, nâng cao, khai thác ứng dụng công nghệ thông tin trong việc thiết kế
các thí nghiệm mô phỏng hiện tượng vật lý nhằm hỗ trợ công tác giảng dạy sau
này. Hy vọng rằng luận văn sẽ là một tài liệu hữu ích cho các sinh viên ngành
Sư phạm vật lý cũng như các giáo viên giảng dạy ở trường THPT.
2. Mục đích nghiên cứu
Tìm hiểu phần mềm Adobe Flash CS5 và ứng dụng nó để thiết kế một số thí
nghiệm mô phỏng các hiện tượng vật lý trong chương trình vật lý lớp 12.
3. Đối tượng nghiên cứu
- Phần mềm Adobe Flash CS5
- Sách giáo khoa vật lý lớp 12
4. Nhiệm vụ nghiên cứu
- Tìm hiểu cách sử dụng phần mềm Adobe Flash CS5
- Ứng dụng để thiết kế một số thí nghiệm mô phỏng các hiện tượng vật lý trong
chương trình vật lý lớp 12.
5. Phương pháp nghiên cứu
- Nghiên cứu tài liệu
- Thực hành thiết kế bằng phần mềm Adobe Flash CS5 trên máy tính
6. Cấu trúc khoá luận
- Phần I. Mở Đầu
- Phần II. Nội Dung
+ Chương I. Giới thiệu phần mềm Adobe Flash CS5
+ Chương II. Ứng dụng Adobe Flash CS5 thiết kế một số thí nghiệm mô phỏng
các hiện tượng vật lý trong chương trình vật lý 12
- Phần III. Kết luận
- Tài liệu tham khảo
7. Kế hoạch thực hiện
- Từ tháng 9 đến tháng 11/2013: sưu tầm tài liệu, hoàn thành đề cương chi tiết
- Từ tháng 11 đến tháng 3/2014: thiết kế các thí nghiệm
- Tháng 4/2014: hoàn thiện khoá luận
2
PHẦN II. NỘI DUNG
Chương I. Tìm hiểu phần mềm Adobe Flash CS5
Hiện nay Adobe Flash đã trải qua rất nhiều phiên bản khác nhau. Với phiên
bản CS5, xuất xưởng năm 2010 Adobe đã bổ sung vào những tính năng mới
giúp người dùng thiết kế và lập trịnh đơn giản hơn. Với mục dích tận dụng được
những nâng cấp của phiên sau tác giả của luận văn chọn phiên bản CS5 của
Adobe Flash với tên đầy đủ là Adobe Flash Professional CS5 trên nền giao diện
Window 8 để làm đối tượng nghiên cứu.
1. Khởi động phần mềm
Khi đã cài đặt thành công phần mềm vào máy tính ta có thể khởi động phần
mềm bằng nhiều cách:
Khởi động từ Star menu (bắt
đầu):
Trong giao diện Star menu di
chuyển và chọn đến biểu tượng
của phần mềm Adobe Flash
Professional CS5 (hình 1) sau đó
click chuột trái hoặc nhấn Enter
trên bàn phím.
(hình 1)
Khởi động từ hộp thoại tìm kiếm:
Di chuyển con chỏ chuột
vào góc màn hình bên phải của
màn hình Deskop sau đó chọn
chức năng search trên window
8, viết vào hộp thoại tìm kiếm
dòng chữ “CS5” sau đó chọn
vào biểu tượng Adobe Flash
(hình 2)
Professional CS5 (hình 2) rồi
click chuột trái hoặc nhấn
Enter trên bàn phím.
3
Sau khi cho ̣n
xong, chương
trình màn hình Splash - màn hình
chào
đón
của
Adobe
Flash
Professional CS5 sẽ hiện ra (hình 3)
Sau khi quá trình khởi động
hoàn tất ta sẽ thấy có giao diện sau
(hình 3)
đây (hình 4)
Flash CS5 cho phép làm việc
theo chế độ Tab. Trên vùng thanh
menu,
ở
góc
bên
phải
mục
Essentials cho phép ta chuyển đổi
qua lại giữa các cách bố trí giao
diện. Có 6 chế độ bố trí giao diện:
(hình 4)
Animator, Classic, Debug, Designer, Developer và Essentials. Với mục đích của
khóa luận là tạo hoạt hình mô phỏng thí nghiệm nên tôi chọn chế độ Animator
và ActionScript 2.0.
2. Giao diện chương trình và các panel
(hình 5)
Stage (sân khấu)
Stage là vùng màn hình mà ta vẽ vào và là vùng trình diễn khi phim đã được
xuất bản.
4
Toolbox (hộp công cụ)
Toolbox bao gồm các công cụ vẽ hình, chỉnh sửa hình, xem hình…
Panels (bảng chức năng)
Các bảng (panel) của Flash giúp đỡ những công việc xử lí các đối tượng trên
sân khấu như căn chỉnh (Align), chỉnh kiểu màu (Color Mixer, Color Swatches),
các phép biến hình: xoay hình, phóng to thu nhỏ… (Transform), …
Có thể cho gọi các bảng từ menu Window.
Timeline (bảng tiến trình)
Bảng tiến trình tổ chức và điều kiển về vấn đề thời gian cho phim.
Layers (các lớp)
Giúp tổ chức trật tự trên dưới của các đối tượng hình vẽ.
Library (thư viện).
Là nơi lưu trữ các tài nguyên của đoạn phim.
Properties (bảng thuộc tính).
Cho ta biết thuộc tính của đối tượng (màu nền, tốc độ hình ảnh, kích cỡ
sân…), về hình ảnh (màu nét, màu nền, độ rộng nét...), các thông số trong các
chuyển động (tốc độ nhanh dần hay chậm dần, quay theo chiều nào…).
3. ActionScript trong Flash
Mã lệnh ActionScript (code AS) là một dạng ngôn ngữ lập trình được xây
dựng trong Flash. ta cũng có thể hiểu AS như các câu lệnh đơn giản bằng tiếng
Anh.
* Thứ nhất, ta cần biết là AS sẽ được viết ở đâu? Có 3 nơi chúng ta có thể viết
AS, là:
- Trên Timeline, ở bất kỳ Frame nào
- Trên nút (button), có AS thì nút mới có ý nghĩa trong tương tác, nút chỉ hoạt
động khi có chuột hoặc bàn phím tác động lên nó mà thôi.
- Trên đoạn phim (MovieClip), hoạt động của MC sẽ rất đa dạng nếu được
kèm theo AS, có thể xem đây là đối tượng chính mà ta thường xuyên viết AS.
* Thứ hai, ta cần biết là viết AS như thế nào?
5
Để viết AS thì rất đơn giản, ta chọn
nơi mà mình dự định sẽ viết AS (có thể
là một Frame trên TimeLine, một nút
hay một MC). Tiếp đó, mở bảng Actions
(phím tắt F9) rồi viết AS vào vùng trắng
bên phải. Bên trái là các mã lệnh có sẵn
của Adobe Flash CS5, ta có thể tham
(hình 6)
khảo nếu quên mã lệnh.
* Thứ ba, ta sẽ tìm hiểu một vài AS cơ bản.
- Cấu trúc cú pháp của một câu lệnh nói chung thì gồm 3 phần chính:
Key Word (Event) {Actions}; Tạm dịch là: Từ khóa (Sự kiện) {Hành động};
Một câu lệnh thường kết thúc bằng dấu (;). Nếu một câu nào đó nằm sau dấu
// thì nó được xem như lời chú thích cho phần code AS mà tác giả vừa viết nhằm
giúp cho người đọc dễ hiểu, nó không được máy tính xem như mã lệnh và sẽ
không thực hiện.
- Đối với AS trên TimeLine: ra lệnh trực tiếp cho TimeLine thực hiện một
hành động nào đó tại một Frame mà ta mong muốn, không cần thông qua
từ khóa hay sự kiện nào cả. Một số code thường dùng hành động trên
TimeLine như:
gotoAndPlay (n); // khi tới frame này thì sẽ nhảy đến tự động chạy từ frame
thứ n.
gotoAndStop (m,n); // nhảy đến và dừng tại frame thứ n của phân cảnh thứ m.
// đây chỉ là 2 cách nhảy frame, mỗi câu lệnh đều có thể dùng 1 trong 2 cách
nhảy như trên.
play (); // chạy frame này.
stop (); // dừng tại frame này.
nextFrame (); // tiến tới frame tiếp theo.
prevFrame (); // lùi lại frame trước đó.
nextScene (); // tiến tới phân cảnh tiếp theo.
prevScene (); // lùi lại phân cảnh trước đó.
6
stopAllSounds (); // dừng chơi mọi âm thanh tại frame này.
- Đối với AS trên nút ta thường có câu lệnh dạng: on (sự kiện) { hành động };
tức là sau sự kiện nào đó thì hành động trong {} sẽ được thực hiện. Một số code
dùng trên nút là:
on (press) {hành động giống trên TimeLine}; // press là sự kiện nhấn chuột
lên nút.
on (release) {hành động giống trên TimeLine}; // release là sự kiện nhấn
chuột lên nút và sau khi thả chuột thì hành động sẽ được thực hiện.
- Đối với AS trên MC ta thường có câu lệnh dạng: onClipEvent (sự kiện)
{hành động};
Một số sự kiện dùng trên MC là: load (khi MC chạy), enterFrame (khi đoạn
phim Flash bắt đầu chạy), mouseDown (nhấn chuột lên MC), mouseMove (di
chuyển chuột), mouseUp (để chuột trên MC)…
Một số hành động trên MC như: starDrag (bắt đầu có thể nhấn và kéo MC),
stopDrag (dừng nhấn và kéo MC), this._x (cho biết tọa độ x của MC), this._y
(cho biết tọa độ y của MC), this._rotation = r (hành động quay MC một góc r
nào đó), this._rotation += V (quay MC theo một tốc độ V nào đó), this._alpha =
a (thể hiện độ mờ của MC theo tỉ lệ a% với 0< a <100), this._visible = v (thể
hiện độ trong suốt của MC theo tì lệ v nào đó, với 0 trong Properties của MC
Tạo một MovieClip trắng (không có đối tượng): nhấn Ctrl + F8
4.1. Đối với chuyển động tròn
Nhập 1 trong 2 đoạn code sau vào MC
onClipEvent (enterFrame) {this._rotation += 10;} // khi chạy frame thì MC
sẽ chuyển động với tốc độ 10 theo chiều (+) (cùng chiều kim đồng hồ)
onClipEvent (enterFrame) {this._rotation -= 10;} // khi chạy frame thì MC sẽ
CĐ với tốc độ 10 theo chiều (-) (ngược chiều kim đồng hồ)
Chạy thử (Ctrl+Enter) để xem kết quả
Lưu ý: tâm của chuyển động này chính là tâm vùng thiết kế riêng của MC, ta
có thể tạo chuyển động tròn với những bán kính quỹ đạo khác nhau bằng cách
chỉnh sửa khoảng cách của đối tượng trong MC tới tâm này.
4.2. Đối với chuyển động thẳng đều
- Theo phương ngang thì dùng 1 trong 2 đoạn code sau:
onClipEvent (enterFrame) {this._x += 10;} // khi chạy frame thì MC sẽ CĐ
với tốc độ 10 theo chiều (+) (trái qua phải)
onClipEvent (enterFrame) {this._x -=10;} //khi chạy frame thì MC sẽ CĐ
với tốc độ 10 theo chiều (-) (phải qua trái)
- Theo phương đứng thì dùng 1 trong 2 đoạn code sau:
onCLipEvent (enterFrame) {this._y +=10;} //khi chạy frame thì MC sẽ CĐ
với tốc độ 10 theo chiều (+) (trên xuống)
onClipEvent (enterFrame) {this._y -= 10;} // khi chạy frame thì MC sẽ CĐ
với tốc độ 10 theo chiều (-) (dưới lên)
8
- Theo một phương bất kỳ, khi này ta cần biết hàm của y theo x : y = f(x) sau đó
dùng đoạn code có cấu tạo như sau:
onClipEvent (enterFrame) { this._x += speed ; this._y =f (this._x) ;}
VD: khi muốn MC chuyển động theo phương 450 hướng lên, tức là y = f(x) = x,
khi đó ta có đoạn code:
onClipEvent (enterFrame) { this._x += 10 ; this._y = this._x ;}
//khi chạy frame thì MC sẽ CĐ với tốc độ 10 theo chiều trái qua phải và
hướng lên góc 450
4.3. Đối với chuyển động thẳng chậm dần đều
- Theo phương ngang thì trước tiên ta cần đặt vật ở vị trí ban đầu, sau đó cần
xác định vị trí cuối cùng rồi dùng đoạn code sau:
onClipEvent (load) {
this._x = 0 ; this._y = 50; speed = 20; // một biến tên speed, ảnh hưởng đến
tốc độ di chuyển của MC
}// xác định vị trí đầu là x = 0 và y = 50, có thể bỏ đoạn code này nếu đã đặt
vật ở vị trí đầu
onClipEvent (enterFrame) { this._x += (400 - this._x)/speed;}
// khi chạy frame thì MC bắt đầu thay đổi vị trí x bằng cách cộng thêm hiệu
của 550 (đây chính là vị trí cuối ta chọn, (550,50)) và vị trí cũ rồi chia cho
speed, phần cộng thêm giảm dần khi tọa độ cũ tăng nên CĐ là chậm dần
- Theo phương đứng ta cũng làm tương tự, cần vị trí đầu và vị trí cuối sau đó
nhập
onClipEvent (enterFrame) { this._y += (400 - this._y)/speed;}
// khi chạy frame thì MC bắt đầu thay đổi vị trí y bằng cách cộng thêm hiệu
của 400 (đây chính là vị trí cuối ta chọn, (50,400)) và vị trí cũ rồi chia cho
speed, phần cộng thêm giảm dần khi tọa độ cũ tăng nên CĐ là chậm dần
- Theo một phương bất kỳ, khi này ta cần biết hàm của y theo x : y = f(x) sau đó
dùng đoạn code có cấu tạo như sau:
onClipEvent (load) {
this._x = vị trí đầu của x ; this._y = vị trí đầu của y; speed = tốc độ ;}
9
onClipEvent (enterFrame) {
this._x += (vị trí cuối của x – this._x)/speed ; this._y = f (this._x);}
- Ta có thể tự tìm hiểu thêm để thay đổi hướng chuyển động của vật.
4.4. Đối với chuyển động thẳng nhanh dần đều
Ta làm tương tự nhưng trên nguyên tắc là cộng thêm một lượng tăng dần thì
sẽ có chuyển động nhanh dần.
4.5. Đối với các chuyển động bất kỳ khác
Ta chỉ cần nắm được nội dung liên hệ giữa x, y rồi cho chúng biểu diễn qua
lại lẫn nhau là được.
VD: chuyển động ném ngang có quỹ đạo là x = v.t, y = 1/2.g.t 2 nên sẽ có
đoạn code sau:
onClipEvent (load) {
this._x = 0 ; this._y = 0 ; t = 0; v = 50; g = 9.8;}
onClipEvent (enterFrame) {
t = t + 0.1; this._x = v*t ; this._y = 1/2*g*Math.pow(t, 2);} // hàm Math.pow
(số, số mũ cần lấy)
10
Chương II. Ứng dụng Adobe Flash CS5 thiết kế một số thí nghiệm mô
phỏng trong chương trình vật lý 12
1. Thí nghiệm về con lắc lò xo
* Mục đích thí nghiệm: Khảo sát dao động của con lắc lò xo về mặt động lực học
+ Điều kiện để vật ở vị trí cân bằng (hay trạng thái của lò xo)
+ Chuyển động của vật khi kéo vật ra khỏi vị trí cân bằng.
+ Các lực tác dụng lên vật, phương chiều độ lớn của chúng
* Những hạn chế khi sử dụng thí nghiệm truyền thống
+ Học sinh chỉ có thể quan sát được chuyển động của con lắc lò xo, nhưng rất
khó để hình dung được sự thay đổi về hướng, độ lớn của các lực tác dụng, sự
thay đổi của vận tốc, gia tốc trong quá trình dao động của con lắc
+ Rất khó để có thể dừng con lắc tại thời điểm bất kì để khảo sát con lắc về mặt
động lực học
+ Để thay đổi được các giá trị của k và m, thì đồng nghĩa với việc phải thay lò
xo, và vật nặng, sẽ rất mất thời gian, và học sinh cũng rất khó để nhận ra sự thay
đổi về tốc độ dao động của con lắc
* Ưu điểm của thí nghiệm flash
+ Trực quan và đễ sử dụng đối với giáo viên và học sinh
+ Giúp học sinh có thể hình dung được một cách dễ dàng nhất về chuyển động
của con lắc lò xo, sự thay đổi về hướng và độ lớn của các lực tác dụng lên vật
trong quá trình dao động của con lắc
+ Có thể tạm dừng con lắc tại một ví trí bất kì để quan sát hoặc khảo sát con lắc
về mặt động lực học
+ Có thể thay đổi trực tiếp các giá trị k (độ cứng của lò xo), m (khối lượng của
vật) để thấy được sự phụ thuộc của dao động vào giá trị của k, m
+ Có thể kéo vật ra khỏi vị trí cân bằng một cách tùy ý, để có được biên độ dao
động khác nhau
+ 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à
11
+ 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 Layer chứa MovieClip
(MC), đặt tên cho MC tương ứng (lưu ý
tên của MC viết liền không cách, không
dấu trong mục ), tạo
các thành phần cần có khác trên Stage
Tạo một MC trắng (nhấn Ctrl + F8) sau
đó vào Libraly để kéo ra Stage
Kết quả (hình 8)
Bước 2. Thực hiện viết các mã lệnh
(hình 8)
- Bên trong MC trắng: Click đúp vào
MC (dấu chấm trắng trên Stage sau đó nhấn F9):
_parent.dung.onPress = function(){ ha = false;}//khi bấm nút tạm dừng
_parent.chay.onPress = function(){ ha = true;} //khi bấm nút play
// khi bấm và giữ vật để kéo vật đi
_parent.vat.onPress = function(){
_parent.vat.startDrag(true, x0 - A, y0, x0 + A, y0); ha = false; }
// khi thả vật ra
_parent.vat.onRelease = function(){ _parent.vat.stopDrag();
biendo = _parent.vat._x - x0;// biên độ được xác định
ha = true; _parent.bienam._visible = true; _parent.bienduong._visible = true;}
_parent.vat.onReleaseOutside = function(){
_parent.vat.stopDrag(); biendo = _parent.vat._x - x0;
ha = true; _parent.bienam._visible = true; _parent.bienduong._visible = true;}
- Bên ngoài MC trắng, nhấn F9 rồi viết các câu lệnh sau:
//tại thời điểm ban đầu
onClipEvent (load){ t = 0; // thời gian ban đầu
12
x0 = _parent.vat._x; y0 = _parent.vat._y;// tọa độ ban đầu của vật
l0 = _parent.loxo._width; // độ dài ban đầu của lò xo
ym = _parent.khoiluong._y; // tọa độ y ban đầu của thanh nút thay đổi m, k
hvat = _parent.vat._height; // độ cao ban đầu của vật
wvat = _parent.vat._width; // độ rộng ban đầu của vật
A = 100; }// biên độ lớn nhất
//khi bắt đầu chạy Frame
onClipEvent (enterFrame){
//ban đầu khi nút thay đổi khối lượng, độ cứng được xác định và khi kéo vật ra
khỏi vtcb thì thuộc tính của các đối tượng được xác định như sau
m = 0.4*(ym + 60 - _root.khoiluong._y)/10;// khối lượng của vật
k = 80*(ym + 60 - _root.docung._y)/10; // độ cứng của lò xo
w = Math.sqrt(k/m); // tần số góc
_parent.vat._height = 30 + 7*m;_parent.vat._width =30 + 7*m;//kích cỡ của vật
_parent.trongluc._height = 40*m; //độ dài của véc-tơ trọng lực
_parent.phanluc._height = 40*m; // độ dài của véc-tơ phản lực
e = _parent.vat._x; // tọa độ x của vật khi bị kéo ra khỏi vị trí cân bằng
_parent.que._x = e; _parent.lucf._x = e; //tọa độ x của que nối, véc-tơ lực F
b = _parent.lucf._xscale = k*(x0 - e)/400;// chiều dài của véc-tơ lực F
_parent.chuf._x = e + b; // tọa độ x của chữ F dùng để chú thích lực F
_parent.giatoc._x = e; // tọa độ x của véc-tơ gia tốc
c = _parent.giatoc._xscale = b/m; // độ dài của véc-tơ gia tốc
_parent.chua._x = e + c; // tọa độ x của chữ a dùng để chú thích gia tốc
_parent.loxo._width = e - x0 + l0; // độ dãn của lò xo khi kéo vật ra khỏi vtcb
_parent.trongluc._x = e;_parent.phanluc._x = e;//tọa độ x của trọng lực, phản lực
_parent.bienam._x = x0 - biendo; _parent.bienduong._x = x0 + biendo; // vị trí
xác định đâu là biên âm, đâu là biên dương theo tọa độ x
_parent.chua._visible = false; _parent.chuf._visible = false; //ẩn chữ a, chữ F
f = Math.abs(_parent.lucf._xscale); //giá trị tuyệt đối của độ dài lực F
j = _parent.lucf._visible; // thuộc tính ẩn/hiện của lực F
13
if ( f > 1 ){ if ( j == true){ _parent.chua._visible = true; // hiển thị chữ a
_parent.chuf._visible = true;}}// hiển thị chữ F
if(ha == true){ t = t + 0.01; // thời gian bắt đầu tăng với hệ số 0.01
//tiếp theo là thuộc tính của các đối tượng theo thời gian
e = _parent.vat._x = x0 + biendo*Math.cos(w*t); // tọa độ của vật
_parent.que._x = e; //tọa độ x của que nối vật với lò xo
_parent.vantoc._x = e; // tọa độ x của véc-tơ vận tốc
a = _parent.vantoc._xscale = 0 - biendo*Math.sin(w*t)*w/30;// độ dài của
véc-tơ vận tốc
_parent.chuv._x = e + a; // tọa độ x của chữ v dùng để chú thích vận tốc
_parent.chuv._visible = false;// ẩn chữa v
_parent.vantoc._visible = false; // ẩn véc-tơ vận tốc
if (f > 1){ if ( j == true){ _parent.vantoc._visible = true;//hiện véc-tơ vận tốc
_parent.chuv._visible = true;}}// hiển thị chữ v
_parent.lucf._x = e; _parent.chuf._x = e + b;//tọa độ x của véc-tơ lực F và chữ F
_parent.giatoc._x=e;_parent.chua._x=e + c;//tọa độ x của véc-tơ gia tốc và chữ a
_parent.lido._x = e; //tọa độ x của mũi tên hai chiều đo khoảng cách li độ
_parent.loxo._width = e - x0 + l0; //độ dài của lò xo
_parent.trongluc._x = e; _parent.phanluc._x = e;
_parent.lido._visible = true; //ẩn mũi tên hai chiều đo khoảng cách li độ
d = _parent.lido._xscale = e - x0;//độ dài của li độ
if (d > 0){ _parent.xduong._visible = true; _parent.xam._visible = false;}
//hiện x > 0 và ẩn x < 0
if (d < 0){ _parent.xduong._visible = false; _parent.xam._visible = true;}}}
//ẩn x > 0 và hiện x < 0
- Tại Frame đầu tiên nhấn F9 và chèn mã lệnh sau:
g = false; h = true; trongluc._visible = g; phanluc._visible = g; lucf._visible = g;
giatoc._visible = g; vantoc._visible = g; chuv._visible = g; xam._visible = g;
xduong._visible = g; bienam._visible = g; bienduong._visible = g; lido._visible =
g; cauhoi._visible = g; // các thuộc tính ẩn (false) và hiện (true) của các đối tượng
14
- Chọn nút ẩn/hiển các lực tác dụng và gia
tốc, nhấn F9 và chèn mã lệnh sau:
on (press){
trongluc._visible
=
!trongluc._visible;
lucf._visible = !lucf._visible;
phanluc._visible
=
!phanluc._visible;
giatoc._visible = !giatoc._visible;}
Nhấn Ctrl + Enter để xem kết quả (hình 9)
2. Thí nghiệm về con lắc đơn
(hình 9)
* Mục đích thí nghiệm: Khảo sát con lắc
đơn về mặt động lực học
+ Chuyển động của con lắc đơn.
+ Các lực tác dụng lên con lắc trong khi dao động
* Những hạn chế khi sử dụng thí nghiệm truyền thống
+ Học sinh chỉ có thể quan sát được chuyển động của con lắc đơn, nhưng rất khó
để hình dung được sự thay đổi về hướng, độ lớn của các lực tác dụng, sự thay
đổi của vận tốc, gia tốc trong quá trình dao động của con lắc
+ Rất khó để có thể dừng con lắc lại tại một thời điểm bất kì để khảo sát
* Ưu điểm của thí nghiệm flash
+ Trực quan và dễ sử dụng đối với giáo viên và học sinh
+ Giúp học sinh có thể hình dung được một cách dễ dàng nhất về chuyển động
của con lắc đơn, sự thay đổi về hướng và độ lớn của các lực tác dụng lên quả
nặng trong quá trình dao động của con lắc
+ Có thể tạm dừng con lắc tại một ví trí bất kì để quan sát hoặc khảo sát con lắc
về mặt động lực họ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à
15
- Xem thêm -